cpuinfo及相关命令)在Linux系统中,/proc/cpuinfo是存储CPU详细信息的虚拟文件,结合lscpu、nproc等命令,可快速获取CPU核心数(包括逻辑核心、物理核心)。以下是具体操作方法:
lscpu命令(推荐)lscpu是专门用于显示CPU架构信息的工具,输出清晰直观,可直接获取逻辑核心数和物理核心数。
lscpu | grep '^CPU(s):',输出中的数值即为系统可用的总逻辑核心数(包含超线程的线程数)。lscpu | grep 'Core(s) per socket'获取每个插槽的核心数,再运行lscpu | grep 'Socket(s)'获取插槽数,两者相乘即为物理核心数(公式:物理核心数 = Core(s) per socket × Socket(s))。lscpu,在输出中找到“Core(s) per socket”(每插槽核心数)和“Socket(s)”(插槽数),手动计算。/proc/cpuinfo文件/proc/cpuinfo包含CPU的详细信息,通过grep和wc命令可统计核心数。
grep -c ^processor /proc/cpuinfo,输出的数字即为系统识别的总逻辑核心数(每个逻辑处理器对应一行processor字段)。grep -c ^physical\ id /proc/cpuinfo,输出的数字即为物理CPU插槽数;再运行grep 'cpu cores' /proc/cpuinfo | uniq,获取每个物理核心的核心数(通常为单核或多核),两者相乘即为物理核心数。awk -F':' '/physical/ {++p} /processor/ {++c} END {print "Physical cores:", p, "Logical cores:", c}' /proc/cpuinfo,直接输出物理核心数和逻辑核心数。nproc命令nproc是简化版工具,直接输出系统可用的逻辑核心数(等同于grep -c ^processor /proc/cpuinfo的结果),无需额外参数。
dmidecode命令(需root权限)dmidecode可获取硬件底层信息,适合需要精确物理核心数的场景。
sudo dmidecode -t processor | grep 'Core Count',输出的“Core Count”值即为每个物理CPU的核心数;若有多个物理CPU,需结合Socket(s)(插槽数)计算总物理核心数(公式:总物理核心数 = Core Count × Socket(s))。以上方法覆盖了Linux系统中查看CPU核心数的常用场景,其中lscpu和nproc是最便捷的选择,/proc/cpuinfo则适合需要详细信息的用户。