最近在看linux优化大师这本书,第2章祥细讲解了分析系统用的工具,这里把一些内容整理出来,以便加深印像。
当进行系统分析时,ps命令显示有关选择的活跃进程的信息。ps命令提供当前已存在的进程列表,和top命令相比,ps命令可以静态方式提供更祥细的信息。
ps有3种不同类型的命令选项:
以centos为例,见下图:
ps -ef 可列出所有的进程。
ps aux 这里的PID对进一步操作很重要,如果使用pmap或renice工具,PID的号码是必需的,使用BSD风格的选项将增加一个进程状态(stat=STAT)显示,并显示命令参数(args=COMMAND)来取代可执行文件的名称。
使用BSD风格的选项还可以改变进程选择,包括在其他终端(TTY)中拥有的进程。此外,还可以设置在所有进程中过虑,以排除其他用户所拥有的进程或没有在一个终端上的进程。例如:使用用户自定义的格式查看每个进程:
如果仅显示sshd则可以键入 ps -C sshd:
还可以查看HTTPD进程的ID, ps -C httpd -o pid=
如果要查看线程信息,则可以键入:ps aux |grep httpd ps -L pid(进程ID)
最后来逻列一下 ps命令的一些选项参数吧:
一. 进程选择。
| -A | 选择所有进程 与 -e相同 |
| -N | 选择除满足指定条件以外的所有进程。(否定选择)与--deselect相同 |
| T | 选择与该终端相关的所有进程。与不带任何参数的t选项相同 |
| -a | 选择除session leader 以外的进程和与该终端不相关的所有进程 |
| a | 这个选项列出使用该终端(tty)的所有进程,或当与x选项一起使用时列出所有进程 |
| -d | 选择除session leader 以外的所有进程 |
| -e | 选择所有进程,与-A相同 |
| r | 限制只选择正在运行的进程 |
| X | 列出所有进程 |
| --deselect | 与-N相同 |
二.Ps 命令可以使用这些选项来选择要显示的信息。输出控制如下:
| -F | 额外的全格式。参见-f选项 |
| -O format | 类似于-o,但是预加载了一些默认列。与-o pid,format,state,tname,time,command或-o pid,format,tname,time,cmd相同,参见-o |
| -M | 添加安全性数据列,与Z相同(SELINUX) |
| X | 寄存器的格式 |
| Z | 与-M相同 |
| -c | 为-l选项显示不同的调度信息 |
| -f | 全格式的列表。与-L一起使用时,添加NLWP(线程数量)和LWP(线程ID)列 |
| j | BSD job控制格式。 |
| -j | Job格式 |
| l | 显示BSD长格式 |
| -l | 长格式,-y选项通常对此选项有用 |
| O format | 指定用户定义的格式 |
| -o format | 用户定义的格式。 |
| s | 显示信号格式 |
| u | 显示面向用户的格式 |
| v | 显示虚拟内存格式 |
| -y | 不显示选项;显示rss地址位,这个选项只能与-l一起使用 |
| -Z | 显示安全上下文格式(selinux) |
| --format format | 用户定义的格式,与-o和o相同 |
| --context | 显示安全上下文格式(selinux) |
| 三.线程显示 | |
| H | 显示线程 |
| -L | 显示线程 可能使用LWP NLWP列 |
| -T | 显示线程 可能使用SPID列 |
| M | 在进程之后显示线程 |
| -m | 在进程之后显示线程 |
| 四.进程状态码 | |
| D | 不可中断的睡眠 |
| S | 可中断的睡眠 |
| R | 运行中的进程 |
| T | 已停止,通过一个job控制信号或因为它正在被跟踪 |
| Z | 已消亡的进程 |
| X | 死亡(永远不会看到) |
| W | 分页 |
| < | 高优先级 |
| N | 低优先级 |
| L | 在内存中锁定分页 |
| s | Session leader |
| l | 多线程 |
| + | 在前台进程组中 |
原文:http://www.cnblogs.com/mfyang/p/6653345.html