如何通过shell/bash检测386、amd 64、arm或arm 64 OS体系结构

q0qdq0h2  于 2023-03-30  发布在  Shell
关注(0)|答案(6)|浏览(272)

我正在寻找一个POSIX shell/bash命令来确定操作系统架构是386amd64arm还是arm64

ybzsozfc

ybzsozfc1#

我建议使用:

dpkg --print-architecture
ars1skjm

ars1skjm2#

uname -m

打印x86_64i686armaarch64等值。

mpgws1up

mpgws1up3#

我的建议如下:

architecture=""
case $(uname -m) in
    i386)   architecture="386" ;;
    i686)   architecture="386" ;;
    x86_64) architecture="amd64" ;;
    arm)    dpkg --print-architecture | grep -q "arm64" && architecture="arm64" || architecture="arm" ;;
esac
kt06eoxx

kt06eoxx4#

$ lscpu | grep Architecture

Architecture:                    x86_64

或者,如果您只想获取值:

$ lscpu | awk '/Architecture:/{print $2}'

x86_64
jmp7cifd

jmp7cifd5#

$ arch

在基于Debian和基于RPM的发行版上测试。

h22fl7wq

h22fl7wq6#

uname -m

这将显示计算机硬件名称,该名称将指示处理器体系结构。
如果输出为“arm”,则表示处理器架构是基于ARM的。如果输出为“x86_64”,则表示处理器架构是基于AMD的(也称为x86-64或Intel 64)。

相关问题