ps 命令使用总结

  ps命令用来查看进程信息,它是类似于快照类型的只显示一次,如果想及时刷新请用top命令.

   1. 常用参数列表

    -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"参数相同。 
--sort -X[+|-] key [,[+|-] key [,…]] 从SORT KEYS段中选一个多字母键.“+”字符是可选地,因为默认地方向就是按数字升序或者词典顺序,如果有"-"则是反向
如:  ps -ef --sort=pid |grep nginx  ps aux --sort=cpu

   

   2.常见用法
   
 (1)  显示pid 7855 的线程列表,并按照CPU占用高的线程排序:  

[root@b28-1330 ~]# ps -mp 7855 -o THREAD,tid,time |sort -rn  |head
USER     %CPU PRI SCNT WCHAN  USER SYSTEM   TID     TIME
root      8.6  24    - -         -      - 20413 00:00:19
root      8.5  24    - -         -      - 20416 00:00:19
root      8.4  24    - -         -      - 20427 00:00:19
root      8.3  24    - -         -      - 20426 00:00:18
root      8.2  24    - -         -      - 20434 00:00:18
root      8.2  24    - -         -      - 20430 00:00:18
root      8.2  24    - -         -      - 20428 00:00:18
root      8.2  24    - -         -      - 20421 00:00:18
root      8.2  24    - -         -      - 20419 00:00:18

    (2) 显示所有用户的进程(进行过滤)   

[root@b28-1330 ~]# ps aux |grep nginx
root     19530  0.0  0.0  20764   684 ?        Ss    2013   0:00 nginx: master process ./nginx
admin    19531  0.0  0.0  46552 26648 ?        S     2013   0:00 nginx: worker process
admin    19532  0.0  0.0  45852 25956 ?        S     2013   0:00 nginx: worker process
admin    19533  0.0  0.0  45852 25956 ?        S     2013   0:00 nginx: worker process
admin    19534  0.0  0.0  45852 25956 ?        S     2013   0:01 nginx: worker process
admin    19535  0.0  0.0  45852 25956 ?        S     2013   0:00 nginx: worker process
admin    19536  0.0  0.0  46224 26196 ?        S     2013   0:00 nginx: worker process
admin    19537  0.0  0.0  45852 25956 ?        S     2013   0:00 nginx: worker process
admin    19538  0.0  0.0  46224 26196 ?        S     2013   0:01 nginx: worker process
root     21328  0.0  0.0  61228   800 pts/2    S+   18:09   0:00 grep nginx

(3) 显示指定的进程
     

[root@b28-1330 ~]# ps -ef |grep nginx
root     19530     1  0  2013 ?        00:00:00 nginx: master process ./nginx
admin    19531 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19532 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19533 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19534 19530  0  2013 ?        00:00:01 nginx: worker process
admin    19535 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19536 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19537 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19538 19530  0  2013 ?        00:00:01 nginx: worker process
root     21415   597  0 18:15 pts/2    00:00:00 grep nginx

    (4) 查找指定名字的进程,并按照cpu进行排序   

root@b28-1330 ~]# ps -ef  --sort=cpu |grep nginx   
root      7351   597  0 19:17 pts/2    00:00:00 grep nginx
root     19530     1  0  2013 ?        00:00:00 nginx: master process ./nginx
admin    19531 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19532 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19533 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19534 19530  0  2013 ?        00:00:01 nginx: worker process
admin    19535 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19536 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19537 19530  0  2013 ?        00:00:00 nginx: worker process
admin    19538 19530  0  2013 ?        00:00:01 nginx: worker process

 

 

posted on 2014-04-16 16:55  babyblue  阅读(463)  评论(0编辑  收藏  举报