我正在寻找POSIX shell / bash命令来确定操作系统架构是386
,amd64
,arm
还是arm64
?
答案 0 :(得分:12)
我建议使用:
dpkg --print-architecture
答案 1 :(得分:3)
uname -m
打印x86_64
,i686
,arm
或aarch64
等值。
答案 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 的发行版上进行了测试。