ps命令详解

语法:ps(process status)
ps [-aAcdefHjlmNVwy][acefghLnrsSTuvxX][-C <指令名称>][-g <群组名称>][-G <群组识别码>][-p <程序识别码>][p <程序识别码>][-s <阶段作业>][-t <终端机编号>][t <终端机编号>][-u <用户识别码>][-U <用户识别码>][U <用户名称>][-<程序识别码>][–cols <每列字符数>][–columns <每列字符数>][–cumulative][–deselect][–forest][–headers][–help][–info][–lines <显示列数>][–no-headers][–group <群组名称>][-Group <群组识别码>][–pid <程序识别码>][–rows <显示列数>][–sid <阶段作业>][–tty <终端机编号>][–user <用户名称>][–User <用户识别码>][–version][–width <每列字符数>]
补充说明:ps是用来报告程序执行状况的指令,您可以搭配kill指令随时中断,删除不必要的程序。

参数:
-a   显示所有终端机下执行的程序,除了阶段作业领导者之外。
a   显示现行终端机下的所有程序,包括其他用户的程序。
-A   显示所有程序。
-c   显示CLS和PRI栏位。
c   列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
-C<指令名称>   指定执行指令的名称,并列出该指令的程序的状况。
-d   显示所有程序,但不包括阶段作业领导者的程序。
-e   此参数的效果和指定”A”参数相同。
e   列出程序时,显示每个程序所使用的环境变量。
-f   显示UID,PPIP,C与STIME栏位。
f   用ASCII字符显示树状结构,表达程序间的相互关系。
-g<群组名称>   此参数的效果和指定”-G”参数相同,当亦能使用阶段作业领导者的名称来指定。
g   显示现行终端机下的所有程序,包括群组领导者的程序。
-G<群组识别码>   列出属于该群组的程序的状况,也可使用群组名称来指定。
h   不显示标题列。
-H   显示树状结构,表示程序间的相互关系。
-j或j   采用工作控制的格式显示程序状况。
-l或l   采用详细的格式来显示程序状况。
L   列出栏位的相关信息。
-m或m   显示所有的执行绪。
n   以数字来表示USER和WCHAN栏位。
-N   显示所有的程序,除了执行ps指令终端机下的程序之外。
-p<程序识别码>   指定程序识别码,并列出该程序的状况。
p<程序识别码>   此参数的效果和指定”-p”参数相同,只在列表格式方面稍有差异。
r   只列出现行终端机正在执行中的程序。
-s<阶段作业>   指定阶段作业的程序识别码,并列出隶属该阶段作业的程序的状况。
s   采用程序信号的格式显示程序状况。
S   列出程序时,包括已中断的子程序资料。
-t<终端机编号>   指定终端机编号,并列出属于该终端机的程序的状况。
t<终端机编号>   此参数的效果和指定”-t”参数相同,只在列表格式方面稍有差异。
-T   显示现行终端机下的所有程序。
-u<用户识别码>   此参数的效果和指定”-U”参数相同。
u   以用户为主的格式来显示程序状况。
-U<用户识别码>   列出属于该用户的程序的状况,也可使用用户名称来指定。
U<用户名称>   列出属于该用户的程序的状况。
v   采用虚拟内存的格式显示程序状况。
-V或V   显示版本信息。
-w或w   采用宽阔的格式来显示程序状况。 
x   显示所有程序,不以终端机来区分。
X   采用旧式的Linux i386登陆格式显示程序状况。
-y   配合参数”-l”使用时,不显示F(flag)栏位,并以RSS栏位取代ADDR栏位 。
–<程序识别码>   此参数的效果和指定”p”参数相同。
–cols<每列字符数> 设置每列的最大字符数。
–columns<每列字符数>  此参数的效果和指定”–cols”参数相同。
–cumulative   此参数的效果和指定”S”参数相同。
–deselect   此参数的效果和指定”-N”参数相同。
–forest   此参数的效果和指定”f”参数相同。
–headers   重复显示标题列。
–help   在线帮助。
–info   显示排错信息。
–lines<显示列数> 设置显示画面的列数。
–no-headers   此参数的效果和指定”h”参数相同,只在列表格式方面稍有差异。
–group<群组名称> 此参数的效果和指定”-G”参数相同。
–Group<群组识别码>  此参数的效果和指定”-G”参数相同。
–pid<程序识别码> 此参数的效果和指定”-p”参数相同。
–rows<显示列数>  此参数的效果和指定”–lines”参数相同。
–sid<阶段作业>   此参数的效果和指定”-s”参数相同。
–tty<终端机编号> 此参数的效果和指定”-t”参数相同。
–user<用户名称>  此参数的效果和指定”-U”参数相同。
–User<用户识别码> 此参数的效果和指定”-U”参数相同。
–version   此参数的效果和指定”-V”参数相同。
–widty<每列字符数>  此参数的效果和指定”-cols”参数相同。

附录:
linux进程有5种状态:
1. 运行(正在运行或在运行队列中等待)
2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

对应的ps工具标识进程的5种状态码:
R 运行 runnable (on run queue)
S 中断 sleeping
D 不可中断 uninterruptible sleep (usually IO)
Z 僵死 a defunct (”zombie”) process
T 停止 traced or stopped

发表评论

邮箱地址不会被公开。 必填项已用*标注