ps(Process Status)用于列出系统当前运行的那些进程。ps命令列出的是当前那些进程的快照,如果要动态显示进程信息,就使用top命令。
Linux上的进程有5种状态:
运行 R runnable (正在运行或运行队列中等待)
中断 S sleeping (休眠中,受阻,在等待某个条件的形成或接受到信号)
不可中断 D uninterruptible sleep (收到信号不唤醒和不可运行,进程必须等待直到有中断发生)
僵死 a defunctt(“zombie”) process (进程已终止,但进程描述符存在,直到父进程调用wait()系统调用后释放)
停止 Z traced or stopped (进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)
ps命令格式
ps[参数]
| 参数 | 功能 |
|---|---|
| a | 显示现行终端机下的所有程序,包括其他用户的程序 |
| -A | 显示所有程序 |
| -e | 同-A |
| e | 显示环境变量 |
| c | 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示 |
| -N | 反向选择 |
| f | 显示进程间的关系 |
| -H | 显示树状结构 |
| r | 显示当前终端的进程 |
| T | 显示当前终端的所有程序 |
| u | 指定用户的所有进程 |
| x | 显示所有程序,不以终端机来区分 |
ps常用命令
ps -A
显示所有进程信息
ps -u root
显示指定用户信息
ps -ef
显示所有进程信息,连同命令行
ps -ef | grep
查找特定进程
ps -l
将目前属于自己这次登入的PID与相关信息列示出来
ps aux
列出目前所有的正在内存中的程序
ps -axjf
列出类似程序树的程序显示