一、 ps 简介
ps命令是最基本进程查看命令。ps对进程进行监测和控制,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等等。
ps为我们提供了进程的一次性的查看,显示瞬间进程的状态,并不动态连续;
如果想对进程进行实时监控,应该用top命令。
二、linux进程的5种状态
ps工具标识进程的5种状态码:
R:运行 (正在运行或在运行队列中等待)
S:中断 (休眠中, 受阻, 在等待某个条件的形成或收到信号)
D:不可中断 (收到信号不唤醒和不可运行, 进程必须等待,直到有中断发生)
Z:僵死 (进程已终止, 但进程描述符存在, 直到父进程调用wait4(),系统调用后释放)
T:停止 (进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后,停止运行)
三、ps 参数
-e 显示所有进程
-f 全格式
-h 不显示标题
-l 长格式
-w 宽输出
-a 显示终端上的所有进程,包括其他用户的进程
-r 只显示正在运行的进程
-u 以用户为主的格式来显示程序状况
-x 显示所有程序,不以终端机来区分
四、ps -ef 显示出的结果
UID : 用户ID
PID : 进程ID
PPID : 父进程ID( 其上级父程序的ID)
C : CPU占用率
STIME : 开始时间(系统启动时间)
TTY : 开始此进程的TTY----终端设备(登入者的终端机位置)
TIME : 此进程运行的总时间
CMD : 命令名
举例:
ps axo pid,%cpu,%mem,comm k -%cpu |head -11 显示cpu占用率最高的前10个进程