PS命令 - 显示进程状态
常用参数
-a | 显示所有进程信息 | -t | 显示属于指定终端主机的程序状态 |
---|---|---|---|
-c | 不显示程序路径 | -T | 显示当前终端主机下的所有程序 |
-d | 不显示阶段作业程序 | -u | 使用用户为主的格式来显示程序状态 |
-e | 显示环境变量信息 | -U | 显示属于指定用户的程序状态(小u也可以) |
-f | 用 ASCII 字符显示树状结构 | -v | 使用虚拟机内存的格式显示程序状态 |
-g | 显示所有程序及其所属组的程序 | -w | 使用宽阔的格式显示程序状态 |
-h | 不显示标题列信息 | -x | 不区分终端主机 |
-H | 使用树状结构展示程序间的相互关系 | -X | 使用旧式登录格式显示程序状态 |
-j | 使用工作控制格式显示程序状态 | --cols | 设置没列的最大字符数 |
-l | 使用详细格式显示程序状态 | --headers | 重复显示标题列 |
-p | 指定程序识别码并显示该程序的状态 | --help | 显示帮助信息 |
-r | 仅显示终端机正在执行中的程序 | --info | 显示排错信息 |
-s | 使用程序信号格式显示程序状态 | --lines | 设置显示画面的列数 |
-S | 显示包括已中断的子程序的状态 | --version | 显示版本信息 |
参考示例
-
显示系统中全部的进程信息,含详细信息
bash[root@localhost ~] # ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 2 0.0 0.0 0 0 ? S 11月27 0:00 [kthreadd] root 4 0.0 0.0 0 0 ? S< 11月27 0:00 [kworker/0:0H] root 6 0.0 0.0 0 0 ? S 11月27 2:59 [ksoftirqd/0] root 7 0.0 0.0 0 0 ? S 11月27 0:09 [migration/0] root 8 0.0 0.0 0 0 ? S 11月27 0:00 [rcu_bh] ---- 省略部分输出信息 ----
- PID:进程的唯一标识符(Process ID)
- %CPU:进程使用 CPU 资源的占比
- %MEM:进程使用内存资源的占比
- VSZ:进程的虚拟内存大小(Virtual Memory Size),单位 KB
- RSS:进程占用的实际物理内存大小(Resident Set Size),单位 KB
- TTY:进程所属的终端设备
- STAT:进程的状态
- START:进程启动的时间
- TIME:进程已经使用的 CPU 时间
- COMMAND:进程的命令名称
-
结合输出重定向, 将当前进程信息保留备份至指定文件
bash[root@localhost ~] # ps aux > File.txt [root@localhost ~] # ls File.txt
-
结合管道操作符,将当前系统运行状态中指定的进程信息过滤出来
bash[root@localhost ~] # ps -ef | grep ssh root 1192 1 0 11月27 ? 00:00:00 /usr/sbin/sshd -D root 84757 117451 0 15:48 pts/0 00:00:00 grep --color=auto ssh root 117447 1192 1 09:34 ? 00:05:40 sshd: root@pts/0,pts/1 root 117487 117447 0 09:34 ? 00:00:00 /usr/libexec/openssh/sftp-server ---- 省略部分输出信息 ----
-
将当前系统运行状态中指定用户的进程信息过滤出来
bash[root@localhost ~] # ps -u root PID TTY TIME CMD 1 ? 00:00:22 systemd 2 ? 00:00:00 kthreadd ---- 省略部分输出信息 ----
-
结合管道操作符与 sort 命令,依据处理器使用量(第三列)情况降序排列
bash[root@localhost ~] # ps aux | sort -rnk 3 root 117447 1.5 0.0 161496 6216 ? Ss 09:34 5:49 sshd: root@pts/0,pts/1 root 5266 1.4 28.2 10412320 2256664 ? Sl 11月27 105:08 /usr/local/software/ root 8452 0.5 0.0 53124 7368 pts/0 Ssl+ 11月30 15:33 redis-sentinel *:26379 ---- 省略部分输出信息 ----
-
结合管道操作符与 sort 命令,依据内存使用量(第四列)情况降序排列
bash[root@localhost ~] # ps aux | sort -rnk 4 polkitd 2651 0.3 5.4 2765992 434920 pts/0 Ssl+ 11月27 28:23 mysqld polkitd 3140 0.3 5.3 2348180 425204 pts/0 Ssl+ 11月27 28:25 mysqld polkitd 2835 0.3 5.3 2348180 428940 pts/0 Ssl+ 11月27 28:17 mysqld
df命令 - 显示磁盘空间使用量
常用参数
-a | 显示所有文件系统 | -l | 只显示本地文件系统 |
---|---|---|---|
-h | 以更易读的方式显示 | -t | 只显示指定类型文件系统 |
-H | 以 1KB = 1000B 为换算单位 | -T | 显示文件系统的类型 |
-i | 显示索引字节信息 | --sync | 在获取磁盘使用信息前先执行sync同步命令 |
-k | 设置显示时的块大小 |
参考示例
-
显示系统全部磁盘的使用量情况(带容量单位)
bash[root@localhost ~] # df -h 文件系统 容量 已用 可用 已用% 挂载点 devtmpfs 3.8G 0 3.8G 0% /dev tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 3.9G 13M 3.8G 1% /run tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/mapper/centos-root 35G 14G 22G 39% / /dev/sda1 1014M 198M 817M 20% /boot tmpfs 781M 0 781M 0% /run/user/0
-
显示指定磁盘分区的使用量情况(带容量单位)
bash[root@localhost ~] # df -h /root 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 35G 14G 22G 39% /
-
显示系统中所有文件系统格式为 XFS 的磁盘分区使用量情况
bash[root@localhost ~] # df -t xfs 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/mapper/centos-root 36678148 13969180 22708968 39% / /dev/sda1 1038336 202448 835888 20% /boot
top命令 - 实时显示系统运行状态
常用命令
-a | 按内存使用情况排序 | -n | 设置显示的总次数,完成后自动退出 |
---|---|---|---|
-b | 使用批处理模式,不进行交互式显示 | -p | 仅显示指定进程 ID 的信息 |
-c | 使用显示模式 | -s | 使用安全模式,不允许交互式指令 |
-d | 设置显示的更新速度 | -u | 仅显示与指定用户 ID 匹配的进程 |
-h | 显示帮助信息 | -v | 使用线程模式 |
-i | 不显示任何闲置或僵死的进程 | -w | 设置显示的宽度 |
-M | 显示内存单位 |
参考示例
-
以默认格式显示系统运行信息
bash[root@localhost ~]# top
-
结合管道操作符,显示指定进程的运行信息
bash[root@localhost ~]# top | grep ssh 117447 root 20 0 161496 6216 4468 S 12.5 0.1 7:12.31 sshd 117447 root 20 0 161496 6216 4468 S 1.0 0.1 7:12.34 sshd
-
以默认格式显示系统运行信息,但提供完整的进程路径及名称
bash[root@localhost ~]# top -c
-
以批处理模式显示程序信息
bash[root@localhost ~]# top -b
-
设定每隔5秒刷新一次信息
bash[root@localhost ~]# top -d 5
-
设定总显示次数为3回,随后自动退出命令
bash[root@localhost ~]# top -n 3
tail命令 - 查看文件尾部内容
常用参数
-c | 设置显示文件尾部的字符数 | --pid | 当指定 PID 进程结束时,自动退出命令 |
---|---|---|---|
-f | 持续显示文件尾部最新内容 | --retry | 当文件无权访问时,依然尝试打开 |
-n | 设置显示文件尾部最新内容 | --version | 显示版本信息 |
-help | 显示帮助信息 |
参考示例
-
默认显示指定文件尾部的后 10 行内容
bash[root@localhost ~]# tail File.cfg
-
显示文件尾部的后5行内容
bash[root@localhost ~]# tail -n 5 File.cfg
-
显示指定文件尾部的后30个字节
bash[root@localhost ~]# tail -c 30 File.cfg
-
持续刷新显示指定文件尾部的后10行内容
bash[root@localhost ~]# tail -f File.cfg
cat命令 - 在终端设备上显示文件内容
常用参数
-A | 等价于 -vET 参数组合 | -t | 等价于 -vT参数组合 |
---|---|---|---|
-b | 显示行数 | -T | 将 TAB 字符显示为 ^| 符号 |
-e | 等价于 -vE 参数组合 | -v | 使用 ^ 和 M- 引用, LFD和TAB除外 |
-E | 每行结束处显示 $ 符号 | --help | 显示帮助信息 |
-n | 显示行数(空行也编号) | --version | 显示版本信息 |
-s | 显示行数(多个空行算一个编号) |
参考示例
-
查看指定文件的内容
bash[root@localhost ~]# cat File.txt
-
查看指定文件的内容并显示行号
bash[root@localhost ~]# cat -n File.txt
-
搭配空设备文件和输出重定向操作符,清空指定文件的内容
bash[root@localhost ~]# cat /root/null > File.txt
名称为null的文件存在,只是里面没有内容。
-
持续写入文件,直到碰到 EOF 终止符后结束并保存
bash[root@localhost ~]# cat > File.txt << EOF
-
搭配输出重定向操作符,将光盘设备制作成镜像文件
bash[root@localhost ~]# cat /dev/cdrom > rhel.iso [root@localhost ~]# ls rhel.iso -lh -rw-r--r--. 1 root root 6.7G May 2 00:43 rhel.iso [root@localhost ~]# file rhel.iso rhel.iso: DOS/MBR boot sector; partition 2 : ID=0xef, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsector 23128, 19888 sectors
head命令 - 显示文件开头的内容
常用参数
-c | 设置显示头部内容的字符数 | -v | 显示文件名的头信息 |
---|---|---|---|
-n | 设置显示行数 | --help | 显示帮助信息 |
-q | 不显示文件名的头信息 | --version | 显示版本信息 |
参考示例
-
默认显示文件的前10行内容
bash[root@localhost ~]# head File.txt
-
显示指定文件的前5行内容
bash[root@localhost ~]# head -n 5 File.txt
-
显示指定文件的前20个字符
bash[root@localhost ~]# head -c 20 File.txt