linux进程 ps命令

ps命令

语法:ps  [选项]

参数:

       a 显示当前终端下所有用户的进程

       x 显示所有不在当前终端下的进程

       u 显示进程UID号或账户号

       e 显示所有进程

       f 显示完整的列表

       l 显示进程的所有者

1)列出自己登入的PID和相关信息

命令:[[email protected] 桌面]# ps -l

linux进程 ps命令

结果说明:

       F :代表这个程序的旗标 (flag),这里4代表使用者是superuser;

       S :代表这个程序的状态(STAT),D=不可中断的睡眠状态、R=运行、S=睡眠、T=跟踪/停止、Z=僵尸进程;

       UID :代表执行者身份;

       PID :进程的ID号;

       PPID :父进程的ID;

       C :CPU使用的资源百分比

       PRI :指进程的执行优先权,其值越小越早被执行;

       NI :这个进程的nice值,其表示进程可被执行的优先级的修正数值。

       ADDR :这个是内核函数,指出该程序在内存的那个部分。如果是个执行的程序,一般就是-;

       SZ :使用掉的内存大小;

       WCHAN :目前这个程序是否正在运作当中,其中-表示正在运作;

       TTY :登入者的终端机位置;

       TIME :使用掉的CPU 时间;

       CMD :所下达的指令名称。

2)列出目前所有正在内存当中的程序

命令:[[email protected] 桌面]# ps aux

 

结果说明:

       USER :该进程属于那个使用者账号;

       PID  :该进程的进程ID号;

       %CPU :该进程使用掉的CPU资源百分比;

       %MEM :该进程所占用的物理内存百分比;

       VSZ  :该进程使用掉的虚拟内存量 (Kbytes);

       RSS  :该进程占用的固定的内存量 (Kbytes);

       TTY  :该进程是在那个终端机上面运作,若与终端机无关,则显示?。此外tty1-tty6是本机上面的登入者程序,若为pts/0的,则表示为由网络连接进主机的程序。

       STAT :该程序目前的状态,主要的状态有:

              R 该程序目前正在运作,或者是可被运作

              S 该程序目前正在睡眠当中,但可被某些讯号(signal)唤醒

              s 发起的一个会话

              T 该程序目前正在侦测或者是停止了;

              Z 该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态

              W 没有足够的内存分页可分配

              < 高优先级的进程

              N 低优先级的进程

              + 处于前台进程组中

              l 多线程

              L 将页面锁定在内存中(用于实时和自定义IO)

       START   :该进程被触发启动的时间;

       TIME    :该进程实际使用CPU运作的时间;

       COMMAND :该程序的实际指令。

3)通过特定用户来过滤进程

需要查看特定用户进程时,可以使用-u参数。

命令:[[email protected] 桌面]# ps -u root

linux进程 ps命令

4)通过cpu和内存来过滤进程

查看系统占用CPU最高的5个进程。

命令:[[email protected] 桌面]# ps aux | sort -rn -k3 | head -5

linux进程 ps命令

查看系统占用内存最高的5个进程。

命令:[[email protected] 桌面]# ps axu | sort -rn –k4 | head -5

linux进程 ps命令

5)通过进程名过滤

使用-C参数,后面跟要查找的进程的名字。

命令:[[email protected] home]# ps -C python

linux进程 ps命令

如果想要看到更多的细节,可以使用-f参数来查看格式化的信息列表。

命令:[[email protected] home]# ps -f -C python

linux进程 ps命令

6)树形显示进程

需要以树形结构显示进程时,可以使用axjf参数:

命令:[[email protected] home]# ps axjf

linux进程 ps命令

也可以使用pstree命令:

命令:[[email protected] home]# pstree

linux进程 ps命令

7)显示安全信息

查看现在有谁登入了服务器

命令:[[email protected] home]# ps eo pid,user,args

linux进程 ps命令

参数含义:

e显示所有进程信息,o控制输出;

Pid,User和args参数分别显示PID、运行应用的用户和该应用。

8)生成新的报表

命令:[[email protected] home]# ps axe -o comm,pid,nice,pcpu

linux进程 ps命令

命令:[[email protected] home]# ps axef -o comm,pid,nice,pcpu

linux进程 ps命令