点击访问 Linux 命令大全 >>
本章节将介绍在 Linux 中怎样使用 ps 命令监视进程,ps 是最常用的监视进程的命令。
ps 命令有多重不同的使用方法,这常常给初学者带来困惑。之所以会出现这样的情况,归咎于 UNIX 悠久的历史和庞杂的派系。
在不同的 UNIX 变体上,ps 命令的语法各有不同。Linux 为此采取了一种折中的处理方式,即融合各种不同的风格,目的只是为了兼顾那些已经习惯了其他系统是上的 ps 命令的用户。
ps 常用参数如下:
-A:所有的进程均显示出来,与 -e 具有同样的效用;
-a: 显示现行终端机下的所有进程,包括其他用户的进程;
-u:以用户为主的进程状态 ;
x:通常与 a 这个参数一起使用,可列出较完整信息。
输出格式规划:
l:较长、较详细的将该 PID 的的信息列出;
j:工作的格式 (jobs format)
-f:做一个更为完整的输出。
ps aux 命令用于显示当前系统上运行的所有进程信息。该命令需要将 UID 转换成用户名,然后才输出。因此,运行速度相比 ps lax 要逊色一些。例如:
上面 ps aux 输出信息中各个字段具体含义如下:
USER:进程创建者的用户名
PID:进程的 ID 号
%CPU:进程占用的 CPU 百分比
%MEM:进程占用的内存百分比
VSZ:进程占用的虚拟内存大小
RSS:内存中页的数量,页是管理内存的单位,在 PC 上通常为 4K
TTY:进程所在终端的 ID 号
STAT:进程状态,常用字母代表的含义如下:
R:正在运行/可运行
D:睡眠中,不可被唤醒,通常是在等待 I/O 设备
S:睡眠中,可以被唤醒
T:停止,由于收到信号或被跟踪
Z:僵进程,已经结束而没有释放系统资源的进程
常用的附加标识有:
<:进程拥有比普通优先级高的优先级
N:进程拥有比普通优先级低的优先级
L:有些页面被锁在内存中
s:会话的先导进程
START:进程启动的时间
TIME:进程已经占用的 CPU 时间
COMMAND:命令和参数
ps lax 可以查看父进程ID(PPID)和谦让度(NI)。该命令不会显示进程属主的用户名,因此可以提供更快的运行速度。例如: