在 CentOS(以及其他 Linux 发行版)中,cpustat 通常来自 sysstat 工具包,或者是 perf-tools / cpustat(如 Brendan Gregg 的 cpustat)。不同工具的排序方式不太一样,下面分别说明。
mpstat / sar(常被误称为 cpustat)sysstat 里没有叫 cpustat 的命令,常用的是:
mpstatsar -u这些命令默认按 CPU 编号排序,一般不支持直接排序,但你可以:
mpstat -P ALL 1 1 | sort -k3 -n
-k3:按第 3 列(%usr 或 %idle,视输出而定)-n:数值排序示例(按 %idle 升序,越靠前越忙):
mpstat -P ALL 1 1 | sort -k12 -n
cpustat(perf 工具)如果你用的是:
cpustat
(来自 https://github.com/brendangregg/perf-tools)
cpustat 1
每 1 秒刷新一次,自动按占用排序。
该工具本身不支持自定义排序字段,但你可以:
cpustat 1 1 > cpu.txt
sort -k2 -n cpu.txt
如果你只是想“看哪个 CPU 最忙”:
top
1 显示所有 CPUP 按 CPU 使用率排序htop
| 工具 | 是否支持排序 | 说明 |
|---|---|---|
| mpstat | 否 | 用 sort 处理 |
| sar | 否 | 用 sort 处理 |
| cpustat (Gregg) | 是(默认 CPU 降序) | 不可自定义 |
| htop | 是 | 最方便 |
如果你能贴一下你运行的 具体命令 或 输出示例,我可以给你更精确的排序命令。