Linux ps命令:显示进程状态(附带实例)
ps 命令来自英文单词 process 的缩写,中文译为“进程”,其功能是显示当前系统的进程状态。
在 Linux 环境中,使用 ps 命令可以查看到进程的所有信息,例如进程的号码、发起者、系统资源(处理器与内存)使用占比、运行状态等。ps 命令可帮助我们及时发现哪些进程出现“僵死”或“不可中断”等异常情况。
ps 命令经常会与 kill 命令搭配使用,以中断和删除不必要的服务进程,避免服务器的资源浪费。
ps 命令的语法格式如下:
【实例 1】显示系统中全部的进程信息,含详细信息。
【实例 2】结合输出重定向,将当前进程信息保留备份至指定文件。
【实例 3】结合管道操作符,将当前系统运行状态中指定的进程信息过滤出来。
【实例 4】结合管道操作符,将当前系统运行状态中指定用户的进程信息过滤出来:
【实例 5】结合管道操作符与 sort 命令,依据处理器使用量(第三列)情况降序排序:
【实例 6】结合管道操作符与 sort 命令,依据内存使用量(第四列)情况降序排序:
在 Linux 环境中,使用 ps 命令可以查看到进程的所有信息,例如进程的号码、发起者、系统资源(处理器与内存)使用占比、运行状态等。ps 命令可帮助我们及时发现哪些进程出现“僵死”或“不可中断”等异常情况。
ps 命令经常会与 kill 命令搭配使用,以中断和删除不必要的服务进程,避免服务器的资源浪费。
ps 命令的语法格式如下:
ps 参数常用参数见下表:
选项 | 描述 | 选项 | 描述 |
---|---|---|---|
-a | 显示所有进程信息 | -t | 显示属于指定终端主机的程序状态 |
-c | 不显示程序路径 | -T | 显示当前终端主机下的所有程序 |
-d | 不显示阶段作业程序 | -u | 使用用户为主的格式来显示程序状态 |
-e | 显示环境变量信息 | -U | 显示属于指定用户的程序状态 |
-f | 用ASCII字符显示树状结构 | -v | 使用虚拟内存的格式显示程序状态 |
-g | 显示所有程序及其所属组的程序 | -w | 使用宽阔的格式显示程序状态 |
-h | 不显示标题列信息 | -x | 不区分终端主机 |
-H | 使用树状结构展示程序间的相互关系 | -X | 使用旧式登录格式显示程序状态 |
-j | 使用工作控制格式显示程序状态 | --cols | 设置每列的最大字符数 |
-l | 使用详细格式显示程序状态 | --headers | 重复显示标题列 |
-p | 指定程序识别码并显示该程序的状态 | --help | 显示帮助信息 |
-r | 仅显示终端主机正在执行中的程序 | --info | 显示排错信息 |
-s | 使用程序信号格式显示程序状态 | --lines | 设置显示画面的列数 |
-S | 显示包括已中断的子程序的状态 | --version | 显示版本信息 |
【实例 1】显示系统中全部的进程信息,含详细信息。
[root@linux ~]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 2 0.0 0.0 0 0 ? S 20:05 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? I< 20:05 0:00 [rcu_gp] root 4 0.0 0.0 0 0 ? I< 20:05 0:00 [rcu_par_gp] ………………省略部分输出信息………………
【实例 2】结合输出重定向,将当前进程信息保留备份至指定文件。
[root@linux ~]# ps aux > File.txt
【实例 3】结合管道操作符,将当前系统运行状态中指定的进程信息过滤出来。
[root@linux ~]# ps -ef | grep ssh ………………省略输出信息………………
【实例 4】结合管道操作符,将当前系统运行状态中指定用户的进程信息过滤出来:
[root@linux ~]# ps -u root PID TTY TIME CMD 1 ? 00:00:01 systemd 2 ? 00:00:00 kthreadd 3 ? 00:00:00 rcu_gp 4 ? 00:00:00 rcu_par_gp ………………省略部分输出信息………………
【实例 5】结合管道操作符与 sort 命令,依据处理器使用量(第三列)情况降序排序:
[root@linux ~]# ps aux | sort -rnk 3 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 2341 0.4 8.1 4504040 164896 tty2 Sl+ 20:05 0:24 /usr/bin/gnome-shell root 4534 0.3 0.4 220064 8520 ? Ssl 21:37 0:00 /usr/nm-dispatcher gdm 1541 0.1 7.3 4211428 147400 tty1 Sl+ 20:05 0:06 /usr/bin/gnome-shell ………………省略部分输出信息………………
【实例 6】结合管道操作符与 sort 命令,依据内存使用量(第四列)情况降序排序:
[root@linux ~]# ps aux | sort -rnk 4 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 2341 0.4 8.1 4503976 164828 tty2 Sl+ 20:05 0:27 /usr/bin/gnome-shell gdm 1541 0.1 7.3 4211428 147556 tty1 Sl+ 20:05 0:08 /usr/bin/gnome-shell root 2661 0.0 3.1 1271636 63004 tty2 Sl+ 20:05 0:01 /usr/bin/gnome-software --gapplication-service ………………省略部分输出信息………………