Linux常用命令(五) ps:显示当前进程状态

The only thing that matters is what you believe. ——《达芬奇密码》

重要的是你内心的信仰。

语法

1
ps [options] [--help]

参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
-A 列出所有的行程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
au(x) 输出格式 :
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER:行程拥有者
PID:pid
%CPU:占用的 CPU 使用率
%MEM:占用的物理内存使用率
VSZ:占用的虚拟内存的大小
RSS:占用的固定内存的大小
TTY:终端的次要装置号码 (minor device number of tty)
STAT:该行程目前的状态,主要状态有:
D:无法中断的休眠状态 (通常 IO 的进程)
R:正在执行中
S:静止状态
s:包含子进程
T:暂停执行
Z:不存在但暂时无法消除
W:没有足够的记忆体分页可分配
<:高优先序的行程
N:低优先序的行程
L:将页面锁定到内存中(用于实时和自定义IO)
l:多线程(使用CLONE_THREAD,类似NPTL线程)
+:位于后台的进程组
START:行程开始时间
TIME:执行的时间
COMMAND:所执行的指令

实例

查看所有进程信息

1
ps -A

查看指定用户信息

1
pa -u xiuxing

查看全格式的全部进程

1
ps -ef

以树状结构显示进程

1
ps -axjf

配合grep查看某进程状态

  查看MySQL进程状态

1
ps -aux | grep mysql

将所有进程信息输出到指定文件中

1
2
ps -aux > ps01.txt      # 将所有进程信息输出到ps01.txt文件中
head -n 10 ps01.txt # 将ps01.txt文件的前10行输出

参考文章:
Linux ps命令 | 菜鸟教程
Linux下ps aux命令中STAT的参数含义
linux下ps命令-狂奔