在linxu中我们可以利用相关命令来查看当前cpu与内存的占用情况了,下面整理了两个实例,有兴趣的进入参考吧.
可以使用一下命令查使用内存最多的10个进程.
查看占用cpu最高的进程:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
或者top(然后按下M,注意这里是大写).
查看占用内存最高的进程:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
或者top(然后按下P,注意这里是大写),该命令组合实际上是下面两句命令:
- psaux|head-1
- psaux|grep-vPID|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行数据,其中的|表示管道操作.
补充:内容解释
- PID:进程的ID
- USER:进程所有者
- PR:进程的优先级别,越小越优先被执行
- NInice:值 --phpfensi.com
- VIRT:进程占用的虚拟内存
- RES:进程占用的物理内存
- SHR:进程使用的共享内存
S:进程的状态,S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数.
- %CPU:进程占用CPU的使用率
- %MEM:进程使用的物理内存和总内存的百分比
- TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
- COMMAND:进程启动命令名称