linux倒序查看占用cpu或内存最多的进程

时间:2024-11-12 12:56:23

一、获取当前系统占用CPU最高的前10个进程

命令:ps aux|head -1;ps aux|sort -rn -k3|head -10
在这里插入图片描述
该命令组合由2条独立的命令组成:
ps aux|head -1:这一句是为了获取标题(USER PID %CPU %MEN VSZ RSS TTY STAT START TIME COMMAND)信息。而head:-N可以指定显示的行数为N行,默认显示10行。
ps aux|sort -rn -k3|head -10:这一句是一个输出加排序组合,ps参数的a指代all,表示所有的进程;u指代user id,就是执行该进程的用户ID;x指代显示所有程序,不以终端机来区分。
接下来是sort命令:

1.参数r指代reverse,这里是指反向比较结果,输出时默认从小到大,反向后从大到小。
2.参数n指代numberic sort,根据其数值排序。
代表根据哪一列进行排序。比如k3指的是数字按照第3列排序。

在本例中,可以看到%CPU在第3个位置,因此k3表示根据%CPU的数值进行由大到小的排序。接下来的|为管道符号,将查询出的结果导入下面的命令中进行下一步的操作。

最后的head -10命令获取默认前10行数据。

二、获取当前系统占用内存最高的前10个进程

ps aux|head -1;ps aux|sort -rn -k4|head -10:与获取cpu的命令唯一区别在于把k3变为k4,来表示根据%MEM的数值进行由大到小的排序。