温馨提示×

Debian cpustat如何排序

小樊
50
2026-08-14 01:42:11
栏目: 智能运维

在 Debian(及其他 Linux 系统)中,cpustat 本身没有内置排序选项,它主要按 CPU 编号(CPU0、CPU1…) 输出。如果你说的是 排序 CPU 使用率,常见做法有两种:


一、如果你用的是 sysstat 里的 cpustat

cpustat 来自 sysstat 包,输出是固定的,无法直接排序

示例

cpustat

输出通常类似:

CPU  %usr   %nice    %sys   %iowait  %steal   %irq   %soft  %guest  %gnice   %idle
 0   5.12    0.00    1.23    0.34     0.00    0.00    0.12    0.00    0.00   93.19
 1   8.21    0.00    2.11    0.45     0.00    0.00    0.23    0.00    0.00   89.00

结论cpustat 本身不能排序,只能后处理。


二、用其他工具实现“按 CPU 使用率排序”

✅ 方法 1:用 mpstat + sort(最常用)

mpstat -P ALL 1 1 | sort -k3 -rn

说明:

  • -P ALL:所有 CPU
  • 1 1:采样 1 次,间隔 1 秒
  • sort -k3 -rn:按第 3 列(%usr)降序排序

你也可以按 总使用率(100 - %idle)排序

mpstat -P ALL 1 1 | awk 'NR>3 {print $1, 100-$13}' | sort -k2 -rn

✅ 方法 2:用 top(最简单)

top

top 中:

  • 1:显示所有 CPU
  • P:按 CPU 使用率排序
  • Shift + f:可手动选择排序字段

✅ 方法 3:用 htop(推荐)

sudo apt install htop
htop
  • F2 → 开启 CPU 使用率排序
  • 或点击 CPU% 表头即可排序

三、如果你指的是“进程级 CPU 排序”

ps

ps -eo pid,comm,%cpu --sort=-%cpu | head

top

top -o %CPU

四、总结对照表

需求 推荐方式
排序 CPU 核心使用率 mpstat + sort
实时排序 top / htop
排序进程 CPU ps / top
直接 cpustat 排序 ❌ 不支持

如果你能贴出你现在的 cpustat 输出,我可以帮你写一个精确排序命令

0