linux下查看最消耗CPU、内存的进程

7,536 阅读1分钟

linux下查看最消耗CPU、内存的进程

前言

在Linux中,有很多命令或工具查看内存使用情况,今天我们来看看如何查看进程消耗、占用的内存情况。

top命令查看

执行top命令后,执行SHIFT +F ,可以选择按某列排序,例如选择%MEM,按s键,就会按%MEM字段排

选择上下键来选择,最后s确认选中,Esc键退出,可以发现右上角会根据你的选择发生变化。

top命令输出参数的含义请自行百度。

ps命令查看

$ ps aux | head -1;ps aux |grep -v PID |sort -rn -k +4 | head -20

使用ps命令找出占用内存资源最多的20个进程

  • CPU占用最多的前10个进程

    $ ps auxw|head -1;ps auxw|sort -rn -k3|head -10 
    
  • 内存消耗最多的前10个进程

    $ ps auxw|head -1;ps auxw|sort -rn -k4|head -10 
    
  • 虚拟内存使用最多的前10个进程

    $ ps auxw|head -1;ps auxw|sort -rn -k5|head -10
    

    -n是按照数字大小排序,-r是以相反顺序,-k是指定需要排序的栏位

ps_mem.py 脚本查看

GitHub地址

我们也可以从开发者 github 页面下载文件,并直接运行 ps_mem.py 脚本。

首先使用git克隆项目

$ git clone https://github.com/pixelb/ps_mem.git && cd ps_mem

执行ps_mem.py脚本,需要root权限

$ sudo python ps_mem.py

不带任何参数直接运行 ps_mem 以精确获取每个程序的的核心内存使用情况。

# ./ps_mem.py

显示具体进程信息

# ./ps_pem.py -s

显示指定进程(PID)列表的信息

# ./ps_pem.py -p 2000,3000

显示内存总量

# ./ps_pem.py -t

每 N 秒打印进程内存,例如每2秒刷新一次内存使用情况

# ./ps_pem.py w 2

总结

本文简单介绍了在linux系统中查看消耗CPU、内存的进程的方法,以上为我经常使用的命令或者工具,当然还有很多其他的命令,但我没有使用过不做评价。