Linux常用指令
总结了常用的Unix/Linux命令,包括ps、top、netstat、free、df、grep、sort、awk、ip。查看右侧👉目录可快速导航。
1 ps
基本格式
ps [options]
常见参数和选项
-e或-A:显示所有进程。-f:全格式显示,提供更多详细信息。-u username:显示指定用户的进程。-U:指定的用户 ID 列出进程。-p PID:显示指定进程的详细信息。-C command:通过命令名来选择进程。-o format:自定义输出格式。可以选择显示特定的列。-aux:显示所有用户的进程,通常与grep一起使用来查找特定进程。-ef:全格式显示所有进程。--sort:对输出结果进行排序。可以按照多种字段排序,如pid、%cpu、%mem等。
2 top
基本格式
top [options]
常见参数和选项
-d seconds:指定刷新间隔,单位为秒。默认是 3 秒。-n iterations:指定刷新次数后退出top。-p PID:只监控指定的进程。-u username:只显示指定用户的进程。-b:以批处理模式运行,适合将输出重定向到文件中。-c:显示完整的命令行,而不是命令名。-H:显示每个进程的线程。
常用的交互命令
top 在运行时支持多种交互式命令,可以对显示内容进行实时调整和操作:
h:显示帮助信息,列出所有可用命令。k:终止指定的进程,需要输入进程的 PID。q:退出top程序。s:改变刷新间隔时间,需要输入秒数。f或F:切换排序字段选择界面,可以选择用哪个字段进行排序。o或O:改变排序字段。按下o后,可以输入字段字母来切换排序,如P表示按 CPU 使用率排序,M表示按内存使用率排序。u:只显示特定用户的进程,需要输入用户名。c:切换显示完整的命令行或仅显示命令名。r:调整指定进程的优先级(需要输入进程的 PID 和优先级)。x:高亮显示当前排序的列。z:切换彩色显示模式。
3 netstat
常用格式
netstat [options]
常见参数和选项
-a:显示所有连接,包括正在进行的和等待的连接,以及监听状态的连接。-n:显示数字格式的地址和端口号,不进行主机名或服务名的反向解析。-l:显示所有监听状态的连接。-p:显示与每个网络连接关联的程序名和进程标识符(PID)。-r:显示系统的路由表信息。-i:显示详细的网络接口信息。-t:仅显示 TCP 协议的连接信息。-u:仅显示 UDP 协议的连接信息。-x:显示 UNIX 域套接字连接信息。
4 free
常用格式
free [options]
常见参数和选项
-h:以人类可读的方式显示输出(例如,使用 MB、GB 等单位)。-b:以字节为单位显示内存使用情况。-k:以 KB 为单位显示内存使用情况(默认单位)。-m:以 MB 为单位显示内存使用情况。-g:以 GB 为单位显示内存使用情况。-t:显示总计行。-s N:每隔 N 秒更新一次显示,连续显示。-c N:显示 N 次输出,然后退出。
5 df
常用格式
df [options] [filesystem]
常见参数和选项
-h:以人类可读的方式显示输出(例如,使用 GB、MB 等单位)。-T:显示文件系统类型。-t type:仅显示指定类型的文件系统(例如,-t ext4只显示 ext4 文件系统)。-a:显示所有文件系统,包括虚拟文件系统。-i:显示 inode 使用情况而不是块使用情况。--total:显示所有列的总计。--block-size=SIZE:使用指定的块大小来显示块数(例如,--block-size=1M)。
6 grep
基本格式
grep [options] pattern [file...]
pattern:要搜索的模式或正则表达式。file:要搜索的文件。如果未指定文件,则从标准输入读取数据。
常见参数和选项
-i:忽略大小写。
-v:反转匹配,即显示不匹配的行。
-n:显示匹配行的行号。
-l:仅显示包含匹配模式的文件名。
-r 或 -R:递归搜索目录中的文件。
-w:仅匹配整个单词。
-c:仅显示匹配行的计数。
--color=auto:高亮显示匹配的部分,默认开启颜色显示。
-E:使用扩展的正则表达式语法(支持 +、?、| 等)。
-f file:从指定文件中读取模式(每行一个),进行搜索。
7 sort
基本格式
sort [options] [file]
file:要排序的文件。如果未指定文件,则从标准输入读取数据。
常见参数和选项
-b:忽略每行开头的空白字符。-f:忽略大小写。-n:按照数值大小排序。-r:逆序排序。-u:去重,仅显示唯一的行。-k key1,key2:按照指定列(字段)排序。例如,-k 2,2表示按照第二列排序。-t:指定字段分隔符,默认是空白字符。-c:检查文件是否已经排序,如果已排序则无输出,否则输出未排序的信息。
8 awk
基本格式
awk 'pattern { action }' [file]
pattern:用于匹配行的模式。如果省略,默认匹配所有行。action:对匹配行进行的操作。如果省略,默认打印匹配行。
常见参数和选项
-
-F fs:指定字段分隔符fs,默认为空白字符(空格或制表符)。awk -F, '{ print $1 }' file.txt -
-v var=value:定义awk内部使用的变量。awk -v max=10 '$1 > max { print $1 }' file.txt -
-f program-file:从文件中读取awk脚本。awk -f script.awk file.txt -
-e script:指定内联脚本,可以用来将多个脚本合并在一个命令行中。awk -e 'BEGIN { print "Start" }' -e '{ print $1 }' -e 'END { print "End" }' file.txt
常用模式和动作
-
$0:表示当前行。awk '{ print $0 }' file.txt -
$1, $2, ...:表示当前行的第一个、第二个字段,依此类推。awk '{ print $1, $2 }' file.txt -
NR:当前行号。awk '{ print NR, $0 }' file.txt -
NF:当前行的字段数量。awk '{ print NF, $0 }' file.txt -
BEGIN:在开始处理所有行之前执行的操作。awk 'BEGIN { print "Start" }' file.txt -
END:在处理完所有行之后执行的操作。awk 'END { print "End" }' file.txt -
模式匹配:可以使用正则表达式进行模式匹配。
awk '/pattern/ { print $0 }' file.txt
9 ip
基本格式
ip [ OPTIONS ] OBJECT { COMMAND | help }
- OPTIONS:全局选项,用于修改命令行为。
- OBJECT:网络对象,如
address、link、route等。 - COMMAND:对网络对象执行的操作,如
show、add、del等。 - help:显示命令帮助信息。
常见参数和选项
全局选项
-
-V:显示ip命令的版本信息。ip -V -
-s:输出更详细的信息。ip -s address -
-4:只显示 IPv4 信息。ip -4 address -
-6:只显示 IPv6 信息。ip -6 address -
-br:简洁格式输出。ip -br address
常用对象和命令
ip address
用于查看和配置 IP 地址。
-
查看所有 IP 地址:
ip address show -
为接口添加 IP 地址:
ip address add 192.168.1.100/24 dev eth0 -
删除接口上的 IP 地址:
ip address del 192.168.1.100/24 dev eth0
ip link
用于查看和管理网络接口。
-
显示所有网络接口:
ip link show -
启用网络接口:
ip link set dev eth0 up -
禁用网络接口:
ip link set dev eth0 down -
修改网络接口的 MTU 值:
ip link set dev eth0 mtu 1400 -
修改网络接口名称:
ip link set dev eth0 name eth1
ip route
用于查看和管理路由表。
-
查看路由表:
ip route show -
添加默认路由:
ip route add default via 192.168.1.1 -
删除默认路由:
ip route del default -
添加静态路由:
ip route add 10.0.0.0/8 via 192.168.1.1
ip neigh
用于查看和管理邻居表(ARP 表)。
-
查看邻居表:
ip neigh show -
添加静态 ARP 条目:
ip neigh add 192.168.1.2 lladdr 00:11:22:33:44:55 dev eth0 -
删除 ARP 条目:
ip neigh del 192.168.1.2 dev eth0
ip tunnel
用于查看和管理隧道接口。
-
查看所有隧道:
ip tunnel show -
添加隧道接口:
ip tunnel add tun0 mode gre remote 192.168.1.2 local 192.168.1.1 ttl 255 -
删除隧道接口:
ip tunnel del tun0