ps
命令默认输出格式只包含PID、USER、TIME、COMMAND
,不包含进程运行时长和进程cpu
使用时长的,如果想输出这些参数,需要重写ps
输出格式。
ps -o重写输出格式
例如要查看pid、进程运行时长、进程使用cpu时长、进程启动命令、进程状态等参数
ps -o pid,etime,comm,user,time,stat
或者
ps -o pid -o etime -o comm -o user -o time -o stat
etime
是进程启动的时间到此刻的时间的差值
time
是cpu
真正执行代码的时间,当进程正在等待网络或磁盘或只是休眠时,此计数器不会增加。当进程使用多个线程并行执行某些代码时,此计数器会与占用该进程的CPU
数量成比例增加。
ps的stat列表
D //无法中断的休眠状态(通常 IO 的进程);
R //正在运行可中在队列中可过行的;
S //处于休眠状态;
T //停止或被追踪;
W //进入内存交换 (从内核2.6开始无效);
X //死掉的进程 (基本很少见);
Z //僵尸进程;
< //优先级高的进程
N //优先级较低的进程
L //有些页被锁进内存;
s //进程的领导者(在它之下有子进程);
l //多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads);
+ //位于后台的进程组;