ps 命令
2024年11月1日大约 2 分钟
ps 命令是 Unix 和 Linux 系统中的一个用于显示当前系统进程状态的命令。通过 ps 命令,用户可以查看系统中运行的进程列表以及相关的进程信息,例如进程 ID(PID)、用户、CPU 使用率、内存使用率等。
基本语法
ps [选项]常用选项
ps 命令有很多选项,以下是一些常用选项及其功能:
ps:显示当前终端会话中的进程(默认)。ps -a:显示当前会话中所有用户的进程(不包括守护进程)。ps -u 用户名:显示特定用户的进程。ps -x:显示当前用户所有会话的进程(包括不在终端中运行的进程)。ps -e或ps aux:显示系统中的所有进程(通常用于查看系统整体进程状态)。
常见组合
ps aux:显示系统中所有进程,显示格式详细。ps -ef:以标准格式列出系统中所有进程,包括父子进程的层级关系。
输出信息解读
ps 命令输出的各字段解释如下:
- PID:进程 ID。
- USER:启动进程的用户。
- %CPU:进程使用的 CPU 百分比。
- %MEM:进程使用的内存百分比。
- VSZ:进程使用的虚拟内存大小。
- RSS:进程占用的实际内存大小。
- TTY:启动进程的终端(
?表示无终端)。 - STAT:进程状态。
- 常见状态代码包括:
- R:运行中。
- S:睡眠中。
- T:停止(暂停)。
- Z:僵尸进程。
- 常见状态代码包括:
- TIME:进程使用的总 CPU 时间。
- COMMAND:启动进程的命令。
示例
ps aux # 查看所有进程,信息详细
ps -ef # 以标准格式显示所有进程信息
ps -u username # 查看指定用户的所有进程
ps -e --forest # 查看系统所有进程并显示父子进程关系
ps -p 1234 # 查看 PID 为 1234 的进程信息常用场景
- 查找特定进程:使用
ps aux | grep 进程名或ps -ef | grep 进程名查找指定名称的进程。 - 查看进程树:使用
ps -e --forest显示进程的父子关系。