【发布时间】:2021-03-01 18:18:31
【问题描述】:
我在 bash 脚本中使用uname -s 来确定操作系统,它在 Linux、macOS 或 Windows 上运行时返回 Linux、Darwin 或 MINGW64_NT...。
EDIT0:我希望我的$PROFILE 脚本检测操作系统是在 Windows 上运行 PS(版本可能低于 6)还是在 Linux 上运行 PSv>=6。
我在 powershell 中找到了这个:
PS> [System.Environment]::OSVersion.Platform
在 Linux 上,它返回 Unix,在 64 位 Windows 上,它返回 Win32NT。
我没有 macOS 可供我使用(还没有:))所以我不知道它在 macOS 上实际返回的内容。
EDIT1:Unix 和 Linux 或 Windows32b 和 Windows64b 之间的这种方法似乎没有什么不同。
powershell 5.1 中检测操作系统还有哪些其他方法?
【问题讨论】:
-
5.1 不能在 macOS 或 Linux 上运行。还有其他获取操作系统信息的方法,显示的方法还不够吗?
-
@DougMaurer 你是对的。在我的 Linux 上,我有 PSv7,但在我的 win7 上,我有 PSv5.1。但我希望我的
$PROFILE脚本能够检测操作系统是在 PS5 还是 PS7 上运行。
标签: powershell uname platform-detection