方法1:
ps -aux | sort -k4nr | head -K
如果是10个进程,K=10,如果是最高的三个,K=3
说明:ps -aux中(a指代all——所有的进程,u指代userid——执行该进程的用户id,x指代显示所有程序,不以终端机来区分)
ps -aux的输出格式如下:
USER PID %CPU %MEMVSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 19352 1308 ?Ss Jul29 0:00 /sbin/init
root 2 0.0 0.0 0 0 ?SJul29 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ?SJul29 0:11 [migration/0]
sort -k4nr中(k代表从第几个位置开始,后面的数字4即是其开始位置,结束位置如果没有,则默认到最后;n指代numberic sort,根据其数值排序;r指代reverse,这里是指反向比较结果,输出时默认从小到大,反向后从大到小。)。本例中,可以看到%MEM在第4个位置,根据%MEM的数值进行由大到小的排序。
head -K(K指代行数,即输出前几位的结果)
|为管道符号,将查询出的结果导到下面的命令中进行下一步的 *** 作。
方法2:top (然后按下M,注意大写)
二、可以使用下面命令查使用CPU最多的K个进程
方法1:
ps -aux | sort -k3nr | head -K
方法2:top (然后按下P,注意大写
统计有多少行用wc命令的-l参数,wc命令可以统计出多少字、行、字符数,它的-l参数表示仅仅统计出行数。这个命令一般是和管道符结合使用,比如想知道一个文件有多少行可以这样用:cat /etc/passwd |wc -l
而查看Linux当前的所有进程用ps aux命令,结果中一行是一个进程,所以,统计Linux系统的进程总数的命令应该是:
ps aux | wc -l
1、cat
/proc/${pid}/status
2、pstree
-p
${pid}
3、top
-p
${pid}
再按H
或者直接输入
top
-bH
-d
3
-p
${pid}
top
-H
手册中说:-H
:
Threads
toggle
加上这个选项启动top,top一行显示一个线程。否则,它一行显示一个进程。
4、ps
xH
手册中说:H
Show
threads
as
if
they
were
processes
这样可以查看所有存在的线程。
5、ps
-mp
手册中说:m
Show
threads
after
processes
这样可以查看一个进程起的线程数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)