inux下获取占用CPU资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
linux下获取占用内存资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
命令组合解析(针对CPU的,MEN也同样道理):
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
该命令组合实际上是下面两句命令:
ps aux|head -1
ps aux|grep -v PID|sort -rn -k +3|head
其中第一句主要是为了获取标题内容(即USER PID %CPU %MEM VSZ RSS TTY STAT START TIME
COMMAND这些内容),接下来的grep -v PID是将ps
aux获得的结果去掉上面的标题,即grep不包含PID这三个字母组合的行,再将其中结果使用sort排序,sort -rn -k
+3该命令中的-rn的r表示是结果倒序排列,n为以数值大小排序,而-k
+3则是针对第3列的内容进行比对排序,再使用head命令获取默认前10行数据。(其中的|表示管道操作)
以上部分: 转载自亿唐网
#########################################################################
以下部分转自其它:
Linux系统会把大部分可用内存划归自己使用。这是Linux管理内存的一种方式,他不是在需要分配空间的时候再到物理内存中去划一块归某个进程使用,
而是提前就把整个内存管理起来,需要的时候再分配给某个进程。这样的好处是,因为有了统一管理,不容易出现内存碎片,提高了效率。这些linux管理的内
存大多数是空闲状态,你可以看看当新的程序运行的时候,Linux的内存占用不会提高,除非机器的内存已经耗尽。这时Linux会把一些不常用的进程换出
到交换分区。
下面是free命令列出的各个选项的详细解释:
total:总计物理内存的大小。
used:已使用多大。
free:可用有多少。
Shared:多个进程共享的内存总额。
Buffers/cached:磁盘缓存的大小。
第三行(-/ buffers/cached):
used:已使用多大。
free:可用有多少。