如何通过shell / bash检测386,amd64,arm或arm64 OS架构

时间:2018-02-08 05:23:11

标签: bash shell arm posix x86-64

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

5 个答案:

答案 0 :(得分:12)

我建议使用:

dpkg --print-architecture

答案 1 :(得分:3)

uname -m

打印x86_64i686armaarch64等值。

答案 2 :(得分:3)

我选择了以下内容:

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

答案 3 :(得分:2)

$ lscpu | grep Architecture

Architecture:                    x86_64

或者如果您只想获取值:

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

x86_64

答案 4 :(得分:0)

$ arch

也有效。在基于 Debian 和基于 RPM 的发行版上进行了测试。