判断操做系统版本,是个老话题,bat、vbs中都有例子,这本不是重要问题,我感脚不值得写帖。
可是捏,随着win版本的增多,powershell版本碎片化愈来愈严重了,因此《用powershell判断操做系统版本》
才愈来愈重要了。也就是说,使用稍微偏一点的powershell命令前,你必须判断操做系统版本。或者,强烈
推荐你们用最新版本win服务器,win客户机玩powershell。shell
cmd+ver法:
貌似没法无别服务器和客户机。服务器
wmi法:
推荐操作系统
systeminfo法:
对中文系统,英文系统的命令有区别。cmd
[Environment]::OSVersion.VersionString法:
貌似没法无别服务器和客户机。io
判断win7
(cmd /c ver)[1] -like "*6.1*"
或
[Environment]::OSVersion.VersionString -like "*6.1*"方法
(systeminfo /FO CSV | ConvertFrom-Csv ).'os 名称' -like "*7*"
powershell 传教士 原创文章。始于 2015-12-15 容许转载,但必须保留名字和出处,不然追究法律责任
英文的系统用:
(systeminfo /FO CSV | ConvertFrom-Csv ).'os name' -like "*7*"
或用wmi方法:
(Get-WmiObject -Class Win32_OperatingSystem).Caption -like "*7*"英文
判断win8,win8.1
(cmd /c ver)[1] -like "*6.3*"
或
[Environment]::OSVersion.VersionString -like "*6.3*"vi
(systeminfo /FO CSV | ConvertFrom-Csv ).'os 名称' -like "*8*"
英文的系统用:
(systeminfo /FO CSV | ConvertFrom-Csv ).'os name' -like "*8*"
或用wmi方法:
(Get-WmiObject -Class Win32_OperatingSystem).Caption -like "*8*"vb
判断win10
(cmd /c ver)[1] -like "*10.*"
或
[Environment]::OSVersion.VersionString -like "*10.*"中文
(systeminfo /FO CSV | ConvertFrom-Csv ).'os 名称' -like "*10*"
英文的系统用:
(systeminfo /FO CSV | ConvertFrom-Csv ).'os name' -like "*10*"
或用wmi方法:
(Get-WmiObject -Class Win32_OperatingSystem).Caption -like "*10*"
判断win2012 r2
(cmd /c ver)[1] -like "*6.3*"
或
[Environment]::OSVersion.VersionString -like "*6.3*"
(systeminfo /FO CSV | ConvertFrom-Csv ).'os 名称' -like "*2012 r2*" 英文的系统用:(systeminfo /FO CSV | ConvertFrom-Csv ).'os name' -like "*2012 r2*" 或用wmi方法:(Get-WmiObject -Class Win32_OperatingSystem).Caption -like "*2012 r2*"