命令 | 语法 | 常用选项及说明 |
---|---|---|
ls | ls [选项] [目录名] | - -l :以长格式显示文件和目录信息- -a :显示所有文件,包括隐藏文件- -h :与 -l 配合,以人类可读的方式显示文件大小- -R :递归显示子目录内容 |
cd | cd [目录名] | - 无选项时,若 目录名 为 .. ,返回上一级目录;若为 ~ ,返回用户主目录 |
mkdir | mkdir [选项] 目录名 | - -p :创建多级目录 |
rm | rm [选项] 文件或目录名 | - -f :强制删除,不提示确认- -r :递归删除目录及其内容 |
mv | mv [选项] 源文件或目录 目标文件或目录 | - 无常用特殊选项,可用于文件或目录的移动和重命名 |
cp | cp [选项] 源文件或目录 目标文件或目录 | - -r :递归复制目录及其内容- -a :归档复制,保留文件所有属性 |
pwd | pwd | 无选项,显示当前工作目录的绝对路径 |
touch | touch [选项] 文件名 | - 无常用特殊选项,用于创建空文件或更新文件的访问和修改时间 |
命令 | 示例 |
ls -l /home | 显示 /home 目录下文件和目录的详细信息 |
ls -ah | 显示当前目录下所有文件(含隐藏文件)并以可读大小显示 |
ls -R | 递归显示当前目录及其子目录内容 |
cd /var/log | 进入 /var/log 目录 |
cd .. | 返回上一级目录 |
cd ~ | 返回用户主目录 |
mkdir new_dir | 创建一个名为 new_dir 的目录 |
mkdir -p a/b/c | 创建多级目录 a/b/c |
rm file.txt | 删除 file.txt 文件 |
rm -f unwanted_file | 强制删除 unwanted_file |
rm -r dir_to_remove | 删除 dir_to_remove 目录及其所有内容 |
mv old_file.txt new_file.txt | 重命名 old_file.txt 为 new_file.txt |
mv file.txt /new/location | 将 file.txt 移动到 /new/location 目录 |
cp file1.txt file2.txt | 复制 file1.txt 为 file2.txt |
cp -r source_dir dest_dir | 复制 source_dir 目录及其内容到 dest_dir |
cp -a important_file /backup | 复制 important_file 并保留所有属性到 /backup 目录 |
pwd | 显示当前所在目录的完整路径 |
touch new_empty_file.txt | 创建一个名为 new_empty_file.txt 的空文件 |
除了选项本身可以组合以外,选项和参数也可以一起使用。
命令 | 语法 | 常用选项及说明 |
---|---|---|
cat | cat [选项] 文件1 [文件2 ...] | - -n :显示行号 |
tac | tac 文件 | 无选项,反向显示文件内容 |
grep | grep [选项] 模式 文件名 | - -i :忽略大小写- -r :递归搜索目录中的文件- -n :显示匹配行的行号 |
sed | sed [选项] '脚本命令' 文件 | - -i :直接修改文件内容 |
awk | awk '条件 {动作}' 文件 | - 可用于文本处理和数据提取,条件和动作可根据需求自定义 |
命令 | 示例 |
cat file.txt | 显示 file.txt 的内容 |
cat -n file.txt | 显示 file.txt 的内容并显示行号 |
tac file.txt | 反向显示 file.txt 的内容 |
grep "keyword" file.txt | 在 file.txt 中搜索包含 keyword 的行 |
grep -i "Hello" file.txt | 忽略大小写搜索包含 Hello 的行 |
grep -r "pattern" /home | 递归搜索 /home 目录下所有文件中包含 pattern 的行 |
sed 's/old/new/g' file.txt | 将 file.txt 中所有的 old 替换为 new |
sed -i 's/error/fix/g' file.txt | 直接修改 file.txt 中所有的 error 为 fix |
awk '{print $1}' file.txt | 打印 file.txt 中每行的第一个字段 |
awk '\(3 > 10 {print \)0}' data.txt | 打印 data.txt 中第三列大于 10 的行 |
命令 | 语法 | 常用选项及说明 |
---|---|---|
ping | ping [选项] 目标地址 | - -c 次数 :指定发送 ICMP 包的次数- -i 间隔 :指定发送 ICMP 包的时间间隔(秒) |
ifconfig | ifconfig [接口名] [选项] | - up :启用指定网络接口- down :禁用指定网络接口- 指定 IP 地址和子网掩码: ifconfig 接口名 IP地址 netmask 子网掩码 |
netstat | netstat [选项] | - -an :显示所有网络连接信息,包括监听和非监听状态- -t :显示 TCP 连接信息- -u :显示 UDP 连接信息 |
traceroute | traceroute [选项] 目标地址 | - 无常用特殊选项,用于跟踪数据包到目标地址所经过的路由 |
命令 | 示例 |
ping www.baidu.com | 测试与百度服务器的网络连接 |
ping -c 5 www.google.com | 向谷歌服务器发送 5 个 ICMP 包进行测试 |
ping -i 2 192.168.1.1 | 每 2 秒向 192.168.1.1 发送一个 ICMP 包 |
ifconfig eth0 up | 启用 eth0 网络接口 |
ifconfig eth0 down | 禁用 eth0 网络接口 |
ifconfig eth0 192.168.1.100 netmask 255.255.255.0 | 为 eth0 接口配置 IP 地址和子网掩码 |
netstat -an | 显示系统中所有网络连接的详细信息 |
netstat -t | 显示所有 TCP 连接信息 |
netstat -u | 显示所有 UDP 连接信息 |
traceroute www.example.com | 跟踪到 www.example.com 的路由 |
命令 | 语法 | 常用选项及说明 |
---|---|---|
ps | ps [选项] | - -ef :显示所有进程的详细信息,包括父进程 ID 等- -aux :以 BSD 风格显示所有进程信息,包含 CPU 和内存使用情况 |
top | top [选项] | - -d 秒数 :指定刷新间隔时间 |
kill | kill [信号] 进程号 | - -9 :强制终止进程(SIGKILL 信号)- -15 :正常终止进程(SIGTERM 信号,默认) |
pkill | pkill [选项] 进程名 | - -f :根据进程名的完整命令行匹配 |
命令 | 示例 |
ps -ef | 显示系统中所有进程的详细信息 |
ps -aux | 以 BSD 风格显示所有进程的 CPU 和内存使用情况 |
top | 实时显示系统中进程的资源使用情况 |
top -d 5 | 每 5 秒刷新一次 top 显示的内容 |
kill 1234 | 正常终止进程号为 1234 的进程 |
kill -9 5678 | 强制终止进程号为 5678 的进程 |
pkill firefox | 终止所有名为 firefox 的进程 |
pkill -f "python script.py" | 终止所有命令行包含 python script.py 的进程 |
命令 | 语法 | 常用选项及说明 |
---|---|---|
chmod | chmod [选项] 权限模式 文件或目录名 | - 权限模式可以用数字(如 755 )或符号(如 u+rwx,g+rx,o+rx )表示- -R :递归修改目录及其子目录和文件的权限 |
chown | chown [选项] 所有者:组名 文件或目录名 | - -R :递归修改目录及其子目录和文件的所有者和组 |
chgrp | chgrp [选项] 组名 文件或目录名 | - -R :递归修改目录及其子目录和文件的所属组 |
命令 | 示例 |
chmod 755 script.sh | 将 script.sh 的权限设置为所有者可读可写可执行,组用户和其他用户可读可执行 |
chmod -R 777 shared_dir | 递归将 shared_dir 目录及其内容的权限设置为所有人可读可写可执行 |
chown user:group file.txt | 将 file.txt 的所有者设置为 user,所属组设置为 group |
chown -R root:root /var/www | 递归将 /var/www 目录及其内容的所有者和组设置为 root |
chgrp developers project_dir | 将 project_dir 的所属组设置为 developers |
chgrp -R sales sales_data | 递归将 sales_data 目录及其内容的所属组设置为 sales |
命令 | 语法 | 常用选项及说明 |
---|---|---|
tar | tar [选项] 压缩包名 文件或目录 | - -zcvf :创建 gzip 压缩的 tar 包- -jcvf :创建 bzip2 压缩的 tar 包- -zxvf :解压缩 gzip 压缩的 tar 包- -jxvf :解压缩 bzip2 压缩的 tar 包 |
gzip | gzip [选项] 文件 | - -d :解压缩文件 |
bzip2 | bzip2 [选项] 文件 | - -d :解压缩文件 |
命令 | 示例 |
tar -zcvf archive.tar.gz file1.txt file2.txt | 创建包含 file1.txt 和 file2.txt 的 gzip 压缩 tar 包 |
tar -jxvf backup.tar.bz2 | 解压缩 bzip2 压缩的 backup.tar.bz2 包 |
gzip file.txt | 压缩 file.txt 为 file.txt.gz |
gzip -d file.txt.gz | 解压缩 file.txt.gz 为 file.txt |
bzip2 large_file.txt | 压缩 large_file.txt 为 large_file.txt.bz2 |
bzip2 -d large_file.txt.bz2 | 解压缩 large_file.txt.bz2 为 large_file.txt |
命令 | 语法 | 常用选项及说明 |
---|---|---|
uname | uname [选项] | - -a :显示所有系统信息,包括内核名称、主机名、内核版本等- -r :显示内核版本 |
df | df [选项] | - -h :以人类可读的方式显示磁盘使用情况 |
du | du [选项] 目录名 | - -h :以人类可读的方式显示目录大小- -s :只显示总大小 |
free | free [选项] | - -h :以人类可读的方式显示内存使用情况 |
命令 | 示例 |
uname -a | 显示系统的所有信息 |
uname -r | 显示当前内核版本 |
df | 显示系统磁盘分区的使用情况 |
df -h | 以易读的格式显示磁盘使用情况 |
du /home/user | 显示 /home/user 目录及其子目录的磁盘使用情况 |
du -sh /var/log | 以易读格式显示 /var/log 目录的总大小 |
free | 显示系统内存的使用情况 |
free -h | 以易读格式显示内存使用情况 |
-
Linux操作系统命令
命令分类 命令 语法 常用选项及示例 系统信息相关 uname uname [选项]
-a
:显示所有信息,如uname -a
;
-m
:显示机器硬件架构,如uname -m
;
-r
:显示内核发行版本,如uname -r
系统信息相关 dmidecode dmidecode [选项]
-q
:安静模式,如dmidecode -q
;
-t type
:显示指定类型 DMI 信息,如dmidecode -t 1
系统信息相关 hdparm hdparm [选项] [设备名]
-i
:显示硬盘硬件信息,如hdparm -i /dev/sda
;
-t
:进行硬盘读取测试,如hdparm -t /dev/sda
;
-T
:测试硬盘缓存读取速度,如hdparm -T /dev/sda
系统信息相关 date date [选项] [+格式]
-s
:设置系统日期和时间,如date -s "2024-10-01 12:00:00"
;+格式
:按指定格式输出,如date +"%Y-%m-%d %H:%M:%S"
文件和目录操作 cd cd [目录名]
cd /home/user
:进入指定目录;
cd..
:返回上一级目录;
cd ~
:回到用户主目录文件和目录操作 pwd pwd
直接执行显示当前工作目录完整路径 文件和目录操作 ls ls [选项] [目录名]
-l
:长格式显示,如ls -l
;
-a
:显示所有文件,如ls -a
;
-h
:与-l
配合以人类可读方式显示大小,如ls -lh
文件和目录操作 mkdir mkdir [选项] 目录名
-p
:创建多级目录,如mkdir -p /tmp/test/dir
文件和目录操作 rm rm [选项] 文件或目录名
-f
:强制删除,如rm -f file.txt
;
-r
:递归删除目录,如rm -r test_dir
;
-rf
:强制递归删除,如rm -rf test_dir
文件和目录操作 mv mv [选项] 源文件或目录 目标文件或目录
mv file1.txt file2.txt
:重命名文件;
mv file.txt /home/user
:移动文件文件和目录操作 cp cp [选项] 源文件或目录 目标文件或目录
-r
:递归复制目录,如cp -r dir1 dir2
;
-a
:归档复制,如cp -a file.txt /backup
文本处理 cat cat [选项] 文件1 [文件2 ...]
-n
:显示行号,如cat -n file.txt
文本处理 tac tac [文件]
tac file.txt
:反向显示文件内容文本处理 grep grep [选项] 模式 文件名
-i
:忽略大小写,如grep -i "hello" file.txt
;
-r
:递归搜索目录,如grep -r "keyword" /home
文本处理 sed sed [选项] '脚本命令' 文件
-i
:直接修改文件内容,如sed -i 's/old/new/g' file.txt
进程管理 ps ps [选项]
-ef
:显示所有进程详细信息,如ps -ef
;
-aux
:以 BSD 风格显示进程信息,如ps -aux
进程管理 top top [选项]
-d 秒数
:指定刷新间隔秒数,如top -d 5
网络相关 ifconfig ifconfig [网络接口名] [选项]
-a:显示所有网络接口的信息,包括处于非活动状态(down)的接口
up:启用指定的网络接口
down:禁用指定的网络接口
ifconfig [接口名] [IP地址]:为指定的网络接口配置 IP 地址
ifconfig [接口名] [IP地址] netmask [子网掩码]:同时为指定接口配置 IP 地址和子网掩码
ifconfig [接口名] broadcast [广播地址]:为指定的网络接口配置广播地址
ifconfig [接口名] hw ether [MAC地址]:修改指定网络接口的 MAC 地址网络相关 ping ping [选项] 目标地址
-c 次数
:指定发送 ICMP 包的次数,如ping -c 5 www.baidu.com
;
-i 间隔
:指定发送 ICMP 包的间隔秒数,如ping -i 2 www.baidu.com
网络相关 netstat netstat [选项]
-an
:显示所有网络连接详细信息,如netstat -an
;
-t
:显示 TCP 连接,如netstat -t
;
-u
:显示 UDP 连接,如netstat -u
权限管理 chmod chmod [选项] 权限模式 文件或目录名
权限模式如 755
chmod 755 file.txt
:设置文件权限;
-R
:递归修改目录权限,如chmod -R 755 dir
权限管理 chown chown [选项] 所有者:组名 文件或目录名
-R
:递归修改目录所有者和组
如chown -R user:group dir
压缩和解压缩 tar tar [选项] 压缩包名 文件或目录
-zcvf
:创建 gzip 压缩的 tar 包,如tar -zcvf file.tar.gz file1 file2
;
-zxvf
:解压缩 gzip 压缩的 tar 包,如tar -zxvf file.tar.gz
压缩和解压缩 gzip gzip [选项] 文件
-d
:解压缩文件,如gzip -d file.txt.gz
压缩和解压缩 bzip2 bzip2 [选项] 文件
-d
:解压缩文件,如bzip2 -d file.txt.bz2