linux ps 命令

ps命令是用来查看系统运行的进程 

-A 显示所有进程(等价于-e)(utility)
-a 显示一个终端的所有进程,除了会话引线
-N 忽略选择。
-d 显示所有进程,但省略所有的会话引线(utility)
-x 显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用。(utility)
-p pid 进程使用cpu的时间
-u uid or username 选择有效的用户id或者是用户名
-g gid or groupname 显示组的所有进程。
U username 显示该用户下的所有进程,且显示各个命令的详细路径。如:ps U zhang;(utility)
-f 全部列出,通常和其他选项联用。如:ps -fa or ps -fx and so on.
-l 长格式(有F,wchan,C 等字段)
-j 作业格式
-o 用户自定义格式。
v 以虚拟存储器格式显示
s 以信号格式显示
-m 显示所有的线程
-H 显示进程的层次(和其它的命令合用,如:ps -Ha)(utility)
e 命令之后显示环境(如:ps -d e; ps -a e)(utility)
h 不显示第一行

  常用的命令

       

1 查看所有进程
   ps -ef
   ps  aux

2 显示具体用户的进程
  使用"-u"选项后跟用户名来过滤所属用户的进程。多个用户名可以用逗号分隔。
  ps -f -u www 

3. 通过名字或者进程id显示进程
    通过"-C"选项后面加上名字或者命令来搜索进程。
    ps -C  nginx
   
    要通过进程id显示进程,就使用"-p"选项,并且还可以通过逗号分隔来指定多个进程id。
    ps -f -p 1,2,3
  
    "-C"必须提供精确的进程名,并且它并不能通过部分名字或者通配符查找。为了更灵活地搜索进程列表,通常使用grep命令。
    ps -ef | grep nginx

4. 通过cpu或者内存使用排序进程
    系统管理员通常想要找出那些消耗最多内存或者CPU的进程。排序选项会基于特定的字段或者参数来排序进程列表。

可以用'--sort'指定多个字段,并用逗号分割。除此之外,字段前面还可以跟上'-'或者'+'的前缀来相应地表示递减和递增排序。这里有很多的用于排序的选项,通过man页来获取完整的列表。
      ps aux --sort=-pcpu,+pmem

      显示前5名最耗cpu的进程。
       ps aux --sort=-pcpu | head -5

   

  参考网站  http://www.binarytides.com/linux-ps-command/

原文地址:https://www.cnblogs.com/jackspider/p/5019126.html