ps命令来自英文单词process的缩写,中文译为"进程",其功能是显示当前系统的进程状态。使用ps命令可以查看到进程的所有信息,例如进程的号码、发起者、系统资源(处理器与内存)使用占比、运行状态等。ps命令可帮助我们及时发现哪些进程出现"僵死"或"不可中断"等异常情况。
ps命令经常会与kill命令搭配使用,以中断和删除不必要的服务进程,避免服务器的资源浪费。
**语法格式:**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 | 显示版本信息 |
参考示例
显示系统中全部的进程信息,含详细信息:
[root@linuxcool ~]# 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]
………………省略部分输出信息………………
结合输出重定向,将当前进程信息保留备份至指定文件:
[root@linuxcool ~]# ps aux > File.txt
结合管道操作符,将当前系统运行状态中指定的进程信息过滤出来:
[root@linuxcool ~]# ps -ef | grep ssh
………………省略输出信息………………
结合管道操作符,将当前系统运行状态中指定用户的进程信息过滤出来:
[root@linuxcool ~]# 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
………………省略部分输出信息………………
结合管道操作符与sort命令,依据处理器使用量(第三列)情况降序排序:
[root@linuxcool ~]# 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
………………省略部分输出信息………………
结合管道操作符与sort命令,依据内存使用量(第四列)情况降序排序:
[root@linuxcool ~]# 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
………………省略部分输出信息………………