文件与目录操作
ls:列出目录内容。例如,ls -l 显示详细列表信息,ls -a 显示包括隐藏文件在内的所有文件。
cd:改变当前工作目录。例如,cd /home/user 进入用户主目录,cd .. 返回上一级目录。
pwd:显示当前工作目录的路径。
mkdir:创建新目录。例如,mkdir myfolder 创建名为 myfolder 的目录。
rmdir:删除空目录。例如,rmdir myfolder 删除名为 myfolder 的空目录。
rm:删除文件或目录。例如,rm myfile.txt 删除文件,rm -r myfolder 递归删除非空目录。
cp:复制文件或目录。例如,cp file1.txt file2.txt 复制文件并命名为 file2.txt,cp -r folder1 folder2 复制目录。
mv:移动或重命名文件或目录。例如,mv file1.txt /home/user/ 移动文件到用户目录,mv file1.txt file2.txt 重命名文件。
touch:创建空文件或更新现有文件的时间戳。例如,touch newfile.txt 创建新文件。
文件查看与编辑
cat:显示文件内容。例如,cat myfile.txt 显示文件内容。
less 或 more:分页显示文件内容。例如,less myfile.txt 允许滚动查看大文件。
nano 或 vim:文本编辑器。例如,nano myfile.txt 使用 nano 编辑器打开文件。
head 和 tail:分别显示文件的前几行和后几行。例如,head -n 5 myfile.txt 显示文件的前五行。
系统信息
df:显示磁盘空间使用情况。例如,df -h 以人类可读的方式显示。
du:显示目录或文件占用的磁盘空间。例如,du -sh /home/user 显示用户主目录的总大小。
top 或 htop:显示系统运行中进程的状态。htop 提供了更友好的界面。
ps:显示当前进程的状态。例如,ps aux 显示所有用户的进程。
free:显示内存使用情况。例如,free -m 以 MB 为单位显示。
uname:显示系统信息。例如,uname -a 显示所有相关信息。
ifconfig 或 ip addr:显示网络接口配置。ip addr 是较新的命令。
用户与权限
whoami:显示当前用户名。
su:切换用户。例如,su - 切换到 root 用户。
sudo:以超级用户权限执行命令。例如,sudo apt-get update 更新包列表。
chmod:更改文件或目录的权限。例如,chmod 755 myfile.sh 设置执行权限。
chown:更改文件或目录的所有者。例如,chown user:group myfile.txt 更改文件的所有者和组。
软件包管理
apt (Debian/Ubuntu):高级包工具,用于安装、更新、卸载软件包。例如,sudo apt install package_name 安装软件包。
yum (Red Hat/CentOS):另一个包管理器。例如,sudo yum install package_name 安装软件包。
dnf (Fedora):DNF 是 YUM 的替代品,提供更快的依赖解析。例如,sudo dnf install package_name 安装软件包。
ls- 列出目录内容
-l:使用长格式输出,显示文件的详细信息,包括权限、链接数、所有者、组、大小和修改日期。
-a:显示所有文件,包括以点(.)开头的隐藏文件。
-h:以人类可读的格式显示文件大小(例如,K、M、G)。
-t:按修改时间排序,最新的文件排在最前面。
-r:反转排序顺序。
-S:按文件大小排序,最大的文件排在最前面。
示例:
ls -lahtS /path/to/directory
cd- 改变当前目录
~:切换到当前用户的家目录。
..:切换到上一级目录。
:切换到上一次所在的目录。
示例:
cd ~
cd ..
cd -
pwd- 显示当前工作目录
mkdir- 创建目录
-p:创建多级目录,如果父目录不存在则自动创建。
示例:
mkdir -p /path/to/new/directory
rmdir- 删除空目录
例:
rmdir /path/to/empty/directory
rm- 删除文件或目录
-f:强制删除,不提示确认。
-i:交互式删除,每删除一个文件都提示确认。
-r或-R:递归删除目录及其内容。
-v:显示删除过程中的详细信息。
示例:
rm -rf /path/to/directory
rm -i file.txt
cp- 复制文件或目录
-r或-R:递归复制目录。
-i:交互式复制,目标文件已存在时提示确认。
-v:显示复制过程中的详细信息。
-p:保留源文件的属性(如时间戳、权限)。
-t:目标和源交换位置
示例:
cp -r source_directory destination_directory
cp -ip file1.txt file2.txt
mv- 移动或重命名文件或目录
-i:交互式移动,目标文件已存在时提示确认。
-v:显示移动过程中的详细信息。
-u:仅当源文件比目标文件新时才移动。
-t:目标和源交换位置
示例:
mv -i file1.txt /path/to/destination/
mv file1.txt file2.txt
touch- 创建空文件或更新文件时间戳
示例:
touch newfile.txt
touch -m file.txt # 仅更新修改时间
cat- 显示文件内容
-n:显示行号。
-b:显示非空行的行号。
-E:显示行尾的结束符($)。
示例:
cat -n file.txt
less- 分页显示文件内容
- 无参数,但在less中可以使用以下命令:
q:退出less。
?string:反向搜索字符串。
/string:正向搜索字符串。
n:重复上次搜索。
N:反向重复上次搜索。
示例:
less file.txt
head和tail- 显示文件的前几行或后几行
-n:指定显示的行数。
-c:指定显示的字节数。
示例
head -n 10 file.txt
tail -n 10 file.tx
df- 显示磁盘空间使用情况
-h:以人类可读的格式显示。
-T:显示文件系统的类型。
示
df -h
df -Th
du- 显示目录或文件占用的磁盘空间
-h:以人类可读的格式显示。
-s:显示总大小。
-a:显示所有文件和目录的大小。
示例:
du -sh /path/to/directory
du -ah /path/to/directory
top和htop- 显示系统运行中进程的状态
- 无参数,但在top中可以使用以下命令:
q:退出top。
k:杀死进程。
r:改变进程优先级。
示例:
top
htop
ps- 显示当前进程的状态
aux:显示所有用户的进程。
-ef:显示所有进程的详细信息。
-C:按命令名称过滤进程。
-u:按用户过滤进程。
示例:
ps aux | grep process_name
ps -ef | grep process_name
free- 显示内存使用情况
-m:以 MB 为单位显示。
-g:以 GB 为单位显示。
-h:以人类可读的格式显示
示例:
free -m
free -h
uname- 显示系统信息
-a:显示所有信息。
-s:显示内核名称。
-r:显示内核版本。
-m:显示机器硬件架构。
-n:显示主机名。
示例:
uname -a
uname -r
ifconfig和ip addr- 显示网络接口配置
- 无参数,但在ip addr中可以使用以下选项:
show:显示指定接口的信息。
add:添加 IP 地址。
del:删除 IP 地址。
示例:
ifconfig
ip addr show eth0
whoami- 显示当前用户名
示例:
whoami
su- 切换用户
:切换到目标用户的环境。
示例:
su - root
sudo- 以超级用户权限执行命令
-i:以目标用户的登录 shell 执行命令。
-u:指定目标用户。
示例:
sudo apt-get update
sudo -u user command
chmod- 更改文件或目录的权限
+x:添加执行权限。
-w:移除写权限。
755:设置权限为 rwxr-xr-x。
示例:
chmod +x script.sh
chmod 755 directory
chown- 更改文件或目录的所有者
user:group:指定新的所有者和组。
-R:递归更改目录及其内容。
示例:
chown user:group file.txt
chown -R user:group directory
apt- 高级包工具
update:更新包列表。
upgrade:升级所有可升级的包。
install:安装包。
remove:卸载包。
search:搜索包。
show:显示包的详细信息。
示例:
sudo apt update
sudo apt upgrade
sudo apt install package_name
sudo apt remove package_name
yum- 包管理器
install:安装包。
update:更新包。
remove:卸载包。
list:列出可用包。
search:搜索包。
示例:
sudo yum install package_name
sudo yum update
sudo yum remove package_name
dnf- DNF 包管理器
install:安装包。
update:更新包。
remove:卸载包。
list:列出可用包。
search:搜索包。
示例:
sudo dnf install package_name
sudo dnf update
sudo dnf remove package_name