从命令行检测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".

以上是从命令行检测AppleSilicon的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>