1、命令简介
ps:显示当前进程的快照。
2、命令语法
ps [options]
3、命令描述
ps
命令是一个非常强大的工具,用来显示当前系统中的活动进程。ps
是Process Status的缩写。使用这个命令,你可以获取关于运行中进程的信息,比如进程ID(PID),正在运行的命令,CPU使用率,内存使用率等。Ps显示当前活动进程的信息。如想重复更新选择和显示的信息,请使用top
。
4、命令选项
参数 | 描述 |
---|---|
ps | 显示与当前终端相关的进程 |
-e , -A | 显示所有进程 |
-f | 全格式显示,包括所有详细信息 |
-u 用户名 | 显示指定用户的进程 |
x | 显示没有控制终端的进程 |
-o | 自定义输出,例如 pid, tty, time, cmd |
-p | 通过进程ID选择显示的进程 |
--ppid | 显示指定父进程ID的子进程 |
-t | 显示在特定终端下运行的进程 |
-C cmdlist | 通过命令名显示进程 |
l , -l | 长格式输出,显示更多的信息 |
j , -j | 作业格式 |
v , -v | 虚拟内存格式 |
aux | 显示所有用户的所有进程, 并以用户友好的格式输出 |
f , --forest | 以ASCII艺术显示树状结构, 展示父子进程关系 |
--sort | 根据指定的键排序输出 |
ps 输出信息中字段的含义:
列名 | 描述 |
---|---|
USER | 进程所有者的用户名 |
PID | 进程号 |
START | 进程激活时间 |
%CPU | 进程自最近一次刷新以来所占用的CPU时间和总时间的百分比 |
%MEM | 进程使用内存的百分比 |
VSZ | 进程使用的虚拟内存大小,以K为单位 |
RSS | 驻留空间的大小,显示当前常驻内存的程序的K字节数 |
TTY | 进程相关的终端 |
STAT | 进程状态 |
D | 不可中断的睡眠状态 |
R | 正在运行,或在队列中的进程 |
S | 处于休眠状态 |
T | 停止或被追踪 |
Z | 僵尸进程 |
W | 进入内存交换(从内核2.6开始无效) |
X | 死掉的进程 |
< | 高优先级 |
N | 低优先级 |
L | 有些页被锁进内存 |
s | 包含子进程 |
+ | 位于后台的进程组 |
l | 多线程,克隆线程 |
TIME | 进程使用的总CPU时间 |
COMMAND | 被执行的命令行 |
NI | 进程的优先级值, 较小的数字意味着占用较少的CPU时间 |
PRI | 进程优先级 |
PPID | 父进程ID |
WCHAN | 进程等待的内核事件名 |
5、使用示例
常用命令 | 描述 |
ps | 显示当前终端下的所有进程 |
ps aux | 显示所有系统运行的进程, 包括前台和后台 |
ps -ef | 以全格式显示所有进程 |
ps -u username | 显示指定用户的所有进程 |
ps -l | 显示长格式的信息 |
ps x | 显示不依赖于终端的所有进程 |
ps -o pid,comm | 自定义输出格式, 只显示进程ID和命令名称 |
ps --forest | 以树状格式显示进程, 展示父子进程之间的关系 |
1)显示指定进程ID(PID)的进程:
ps -p 1234
2)显示进程及其所有子进程:
ps --ppid pid
3)显示进程的环境变量:
ps eww pid
4)按内存使用量排序显示进程:
ps aux --sort=-%mem
5)显示线程信息
ps -eLf
6)结合grep搜索特定的进程:
ps aux | grep 'process-name'
7)显示所有进程的树结构
ps -ejH
8)按CPU使用率排序显示进程:
ps aux --sort=-%cpu