如何判断我的系统是 Unix 还是 Linux?
我使用的是 2010 年款的 Macbook Pro。
答案1
POSIX 定义uname
(“Unix 名称”)提供有关操作系统和硬件平台的信息; runninguname
给出操作系统的实现的名称(或者根据文档coreutils
,内核)。您可以在终端中以交互方式执行此操作,或在脚本中使用输出。
在 Linux 系统上,uname
将打印Linux
.
在 Mac OS X 系统上,uname
将打印Darwin
. (严格来说,任何带有 Darwin 内核的操作系统都会产生这种情况,但在这种情况下,您不太可能遇到除 Mac OS X 之外的任何操作系统。)
这将使您能够确定任何 Mac 正在运行什么。作为抢指出,如果您正在运行 Mac OS X(Darwin
如 所示uname
),那么您正在运行Unix 的认证版本;如果你运行的是Linux,那么你就不是。
在 Mac 上还有很多其他的可能性;您的脚本最终可能会在 Solaris(然后uname
打印SunOS
)、FreeBSD ( FreeBSD
)、带有 Cygwin ( ) 的 Windows 上运行CYGWIN
、MSYS 或 MSYS2 ( MSYS
)、MinGW 或 MinGW-w64 shell ( MINGW64
、MINGW32
)、Interix ( Interix
) 以及其他可能的 shell 上运行我不知道。
uname -a
将打印由 确定的所有可用信息uname
,但更难解析。
答案2
除非您安装了其他东西,否则 Mac 不会运行 Linux。 Macbook 确实运行 Apple 的操作系统OSX 是经过 Unix 认证的因此,这就是你问题的答案。
答案3
答案是:
uname -a
或者:
cat /proc/version