简体   繁体   English

比较PowerShell中的软件版本号

[英]Compare the software version number in PowerShell

I use PowerShell to install software, I need to compare the version number. 我使用PowerShell安装软件,我需要比较版本号。 Some software version numbers are divided into multiple sections, how to compare? 有些软件版本号分为多个部分,如何比较? Here's an example: 这是一个例子:

$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"
}

Define your version numbers as strings and cast them to [version] objects. 将您的版本号定义为字符串,并将其强制转换为[version]对象。

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

Besides casting to [Version] , you could also instantiate the Version objects directly: 除了强制转换为[Version] ,您还可以直接实例化Version对象:

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

or 要么

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM