温馨提示×

linux cpuinfo如何排序

小樊
38
2026-10-16 21:26:56
栏目: 智能运维

在 Linux 下查看和“排序” /proc/cpuinfo 或 lscpu 信息,常见需求有几种,下面按使用场景给你说明。


一、直接查看 CPU 信息(不排序)

cat /proc/cpuinfo

或

lscpu

二、按“逻辑 CPU 编号”排序(最常见)

/proc/cpuinfo 本身是按 processor : 0,1,2... 顺序输出的,一般已经有序。
如果你想显式排序:

grep -E "processor|core id|physical id" /proc/cpuinfo | sort -n

三、按“物理 CPU → 核心 → 逻辑 CPU”排序

适合看 NUMA / 多路 CPU 拓扑:

grep -E "processor|physical id|core id" /proc/cpuinfo | \
awk '
/physical id/ {p=$4}
/core id/ {c=$4}
/processor/ {print p, c, $3}
' | sort -k1,1n -k2,2n -k3,3n

输出示例含义:

物理CPU 核心 逻辑CPU
0 0 0
0 0 1
0 1 2

四、用 lscpu 排序(推荐)

lscpu 本身已经结构化,可导出为表格:

lscpu -p=SOCKET,CORE,CPU

输出示例:

# SOCKET,CORE,CPU
0,0,0
0,0,1
0,1,2

按 CPU 排序:

lscpu -p=CPU | sort -t, -k3 -n

五、按 CPU 频率排序

grep -E "processor|cpu MHz" /proc/cpuinfo | \
awk '
/cpu MHz/ {freq=$4}
/processor/ {print $3, freq}
' | sort -k2 -n

六、按缓存大小排序

grep -E "processor|cache size" /proc/cpuinfo | \
awk '
/cache size/ {c=$4}
/processor/ {print $3, c}
' | sort -k2 -n

七、推荐做法(运维/调试)

✅ 看拓扑:lscpu -e
✅ 脚本处理:lscpu -p
✅ 人工阅读:lscpu


如果你能告诉我:

  • 是想按什么字段排序(CPU号 / 核心 / 频率 / 缓存)
  • 是人工看还是写脚本

我可以给你一条最精确的命令。

0 踩