温馨提示×

怎样读取linux cpuinfo内容

小樊
49
2026-10-14 01:00:18
栏目: 智能运维

在 Linux 系统中,读取 CPU 信息(cpuinfo) 有多种常见方式,下面按最常用 → 进阶给你介绍。


一、最直接的方式(推荐)

1. 查看 /proc/cpuinfo

cat /proc/cpuinfo

常见字段说明:

  • processor:逻辑 CPU 编号(从 0 开始)
  • model name:CPU 型号
  • cpu cores:每个物理 CPU 的核心数
  • siblings:每个物理 CPU 的逻辑 CPU 数(含超线程)
  • flags:CPU 支持的指令集(如 avx, sse 等)

示例:

processor       : 0
model name      : Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz
cpu cores       : 4
siblings        : 8

二、快速查看 CPU 概览

2. 使用 lscpu

lscpu

输出更结构化,适合快速了解:

  • CPU 架构
  • 核心数 / 线程数
  • NUMA 节点
  • 缓存大小

示例:

Architecture:        x86_64
CPU(s):              8
Core(s) per socket:  4
Socket(s):           1
Thread(s) per core:  2

三、统计 CPU 数量(脚本常用)

3. 查看逻辑 CPU 数量

nproc

或

grep -c processor /proc/cpuinfo

4. 查看物理 CPU 个数

grep "physical id" /proc/cpuinfo | sort -u | wc -l

5. 查看每个 CPU 的核心数

grep "cpu cores" /proc/cpuinfo | uniq

四、查看 CPU 型号(一行命令)

grep "model name" /proc/cpuinfo | uniq

五、使用 dmidecode(需要 root)

适合查看 硬件级信息:

sudo dmidecode -t processor

可看到:

  • CPU 插槽
  • 最大频率
  • 是否支持虚拟化

六、编程方式读取(可选)

C / C++

#include <stdio.h>

int main() {
    system("cat /proc/cpuinfo");
    return 0;
}

Python

with open("/proc/cpuinfo") as f:
    print(f.read())

总结(最常用三条)

lscpu
cat /proc/cpuinfo
nproc

如果你是 写脚本 / 做性能优化 / 查虚拟化支持,可以告诉我具体用途,我可以给你更针对性的命令。

0 踩