![如何查明脚本是否在 Linux 或 OSX 中运行](https://linux22.com/image/73266/%E5%A6%82%E4%BD%95%E6%9F%A5%E6%98%8E%E8%84%9A%E6%9C%AC%E6%98%AF%E5%90%A6%E5%9C%A8%20Linux%20%E6%88%96%20OSX%20%E4%B8%AD%E8%BF%90%E8%A1%8C.png)
我想写一个bash脚本来通过snmpbulkwalk获取交换机的一些信息。我想在 Linux 和 OSX 环境中使用相同的脚本,所以我想知道是否有一种方法可以制作一个兼容版本来识别当前操作系统,获取每个操作系统所需的 SNMP 包并运行一堆命令。
提前致谢。
答案1
据我所知,uname
会显示操作系统的通用名称。
我的室友拥有最新(我认为)版本的 OSX,并且Darwin
在运行时会显示。
如果您想要更多输出,uname -a
除了通用名称之外,还会为您提供内核版本、操作系统版本和一堆其他信息。
也就是说,这并不总是正确地识别操作系统。我的 CentOS VPS 显示 Linux 或 GNU/Linux,具体取决于我运行的内容。
我也只是一名大学生,为了好玩而做这种事情(/在我的开发服务器上),所以可能有更好的答案。