列出排名前10的内存占用进程

ps aux --sort=-%mem | head -n 10

命令用途:列出当前系统中内存占用率(%MEM)最高的 10 个进程,帮助快速定位内存消耗大户。

逐段解析

  • ps aux — 显示所有进程的快照:a 显示所有终端进程,u 以用户易读格式输出,x 包含未绑定终端的守护进程。输出列:USER、PID、%CPU、%MEM、VSZ、RSS、TTY、STAT、START、TIME、COMMAND。
  • sort -rk 4,4 — 按第 4 列(%MEM 内存占用率)降序排序:-r 反向排序,-k 4,4 仅以第 4 列为排序键,避免其他列干扰。
  • head -n 10 — 只取前 10 行,即内存占用最高的进程。

输出示例(取前 3 行)

USER       PID %CPU %MEM    VSZ    RSS TTY STAT START   TIME COMMAND
mysql     1234  0.3 15.2 123456 78901 ?   Ssl  09:15 0:23 mysqld
chrome    5678  1.2 12.8 456789 65432 ?   Sl   10:00 1:45 chrome

实用变体

  • ps aux --sort=-%mem | head -n 10 — GNU ps 内置排序语法
  • ps aux | sort -rk 3,3 | head -n 10 — 按 CPU 占用率排序
  • ps aux | sort -nk 4,4 | tail -n 10 — 升序排列(内存最低的进程)

评论(0

暂无评论,来说两句吧

发表评论

回复 取消