This doc explains how to get your windows version,但要在PowerShell中找到它会更难。
[System.Environment]::OSVersion
有很多好的信息但不是服务器工作站标志......
$osInfo = Get-CimInstance -ClassName Win32_OperatingSystem
$osInfo.ProductType
见https://msdn.microsoft.com/en-us/library/aa394239%28v=vs.85%29.aspx
ProductType Data type: uint32 Access type: Read-only Additional system information. Work Station (1) Domain Controller (2) Server (3)
因此,如果值是1
,那么您在工作站操作系统上。
如果它是2
你在域控制器上。
如果它是3
你在一个不是域控制器的服务器上。
如果您使用的是旧版本的Windows / PowerShell,并希望能够在所有这些版本中使用,那么它就是一样的,但是使用Get-WmiObject
:
$osInfo = Get-WmiObject -Class Win32_OperatingSystem
$osInfo.ProductType
(Get-ComputerInfo).OsProductType
在我的机器上,这返回了WorkStation
或Server
。
(Get-WmiObject win32_OperatingSystem).Caption