我正在寻找一个POSIX shell/bash命令来确定操作系统架构是386、amd64、arm还是arm64?
386
amd64
arm
arm64
ybzsozfc1#
我建议使用:
dpkg --print-architecture
ars1skjm2#
uname -m
打印x86_64、i686、arm或aarch64等值。
x86_64
i686
aarch64
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
kt06eoxx4#
$ lscpu | grep Architecture Architecture: x86_64
或者,如果您只想获取值:
$ lscpu | awk '/Architecture:/{print $2}' x86_64
jmp7cifd5#
$ arch
在基于Debian和基于RPM的发行版上测试。
h22fl7wq6#
这将显示计算机硬件名称,该名称将指示处理器体系结构。如果输出为“arm”,则表示处理器架构是基于ARM的。如果输出为“x86_64”,则表示处理器架构是基于AMD的(也称为x86-64或Intel 64)。
6条答案
按热度按时间ybzsozfc1#
我建议使用:
ars1skjm2#
打印
x86_64
、i686
、arm
或aarch64
等值。mpgws1up3#
我的建议如下:
kt06eoxx4#
或者,如果您只想获取值:
jmp7cifd5#
在基于Debian和基于RPM的发行版上测试。
h22fl7wq6#
这将显示计算机硬件名称,该名称将指示处理器体系结构。
如果输出为“arm”,则表示处理器架构是基于ARM的。如果输出为“x86_64”,则表示处理器架构是基于AMD的(也称为x86-64或Intel 64)。