【问题标题】:One command to tell if it is windows, osx or linux/unix一个命令来判断它是 windows、osx 还是 linux/unix
【发布时间】:2017-01-03 08:14:25
【问题描述】:

有没有办法只通过运行一个命令来确定底层操作系统平台,无论它是在 Windows 的命令提示符下运行,还是在 OSX/Linux/Unix 的终端(bash/sh/etc.)上运行?

注意:平台上可能没有 Python/Perl 等或任何此类解释器,因此我们可以运行其中任何一个来找出相同的结果。

【问题讨论】:

    标签: linux windows macos cross-platform


    【解决方案1】:

    简短的回答是“否”,一个命令是不够的(至少不是同一个命令)。那是因为环境太不同了。您仍然可以为 OS X/Linux 执行此操作,因为它们共享相同的来源 - Unix,因此 uname -a 可以工作。但是 Windows 没有这个概念,因为它不是基于 Unix 的。在 Windows 中,您需要运行另一个命令来检查版本:winver

    如果有的话,您可以借助跨平台工具检查主机操作系统类型,例如,一些简单的 java 实用程序或这些 Python oneliners:

    python -c "import platform; print platform.platform()" 
    

    提供更多细节

    python -c "import platform; print platform.system()"
    

    仅给出操作系统类型

    【讨论】:

    • 这很明显。我一直在寻找更有洞察力的东西。
    • 如果你有 Python,你可以运行这个 oneliner:python -c "import platform; print platform.platform()"python -c "import platform; print platform.system()"
    猜你喜欢
    • 2011-12-14
    • 2013-01-11
    • 1970-01-01
    • 2020-03-31
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 2021-11-25
    • 1970-01-01
    相关资源
    最近更新 更多