从命令行检测AppleSilicon
如何从 shell 脚本中检测到它在 M1 Apple 硬件上运行?
我希望能够运行命令行命令,以便我可以编写一个if-statement,它的主体只会在带有 M1 处理器的 mac 上运行时才会被执行(自然至少是 macOS Bug Sur)。
回答
uname -m
将返回arm64而不是x86_64
if [[ `uname -m` == 'arm64' ]]; then
echo M1
fi
或者,正如@chepner 建议的那样
uname -p
将返回arm而不是i386
if [[ $(uname -p) == 'arm' ]]; then
echo M1
fi
-
Note that M1 users can run Terminal in Rosetta mode. In this case "uname -m" returns
"x86_64".