在 bash 中针对各种操作系统和硬件的适当方法是什么?

在 bash 中针对各种操作系统和硬件的适当方法是什么?

目前我基本上在做这样的事情:

if [[ "$OSTYPE" == "linux-gnu" ]]; then
  echo "a"
elif [[ "$OSTYPE" == "darwin"* ]]; then
  echo "b"
elif [[ "$OSTYPE" == "cygwin" ]]; then
  echo "c"
elif [[ "$OSTYPE" == "msys" ]]; then
  echo "d"
elif [[ "$OSTYPE" == "win32" ]]; then
  echo "e"
elif [[ "$OSTYPE" == "freebsd"* ]]; then
  echo "f"
else
  echo "g"
fi

这可能适用于主要的 3 个系统(mac、windows、linux),但对于 raspberry 或 raspberry 裸机或其他自定义操作系统呢?有没有办法检查架构,通常这样做/是否足够?你真的可以编写针对特定目标的程序吗?建筑学而不是操作系统?我是这方面的新手,基本上想知道是否有办法编写 bash 脚本和 C,使其可以在裸机或其他仍使用 x86 或 arm 的晦涩系统上运行。

相关内容