比较PowerShell中的软件版本号

时间:2019-06-04 11:26:33

标签: powershell

我使用PowerShell安装软件,我需要比较版本号。有些软件版本号分为多个部分,如何比较?这是一个示例:

$Old_ver=18.05
$New_ver=19.00

if ($New_ver -gt $Old_ver) {
    Write-Output "You need to install a new version"
} elseif ($New_ver -eq $Old_ver) {
    Write-Output "You have already installed"
} else {
    Write-Output "You have installed a new version"
}

2 个答案:

答案 0 :(得分:6)

将版本号定义为字符串并将其强制转换为[version]对象。

[version]$Old_ver = '18.05'
[version]$New_ver = '19.00'

答案 1 :(得分:0)

除了强制转换为[Version]外,您还可以直接实例化Version对象:

$Old_ver = [Version]::new(18, 5)
$New_ver = [Version]::new(19, 0)

$Old_ver = [Version]::new('18.05')
$New_ver = [Version]::new('19.00')