PowerShell:检查变量是否小于15.0.0.152

PowerShell:检查变量是否小于15.0.0.152,powershell,Powershell,如何测试哪个版本号更大 $Variable1:15.0.0.152 $Variable2:15.0.1.153 如果你想写一个简单的If问题,比如($Variable1-gt$Variable2)可能不是最好的解决方案,但你可以尝试以下方法: [int]($Variable1.Split('.') -Join '') -gt [int]($Variable2.Split('.') -Join '') 更新!这就是你想要的: [System.Version]$Version = "15.0.0

如何测试哪个版本号更大

$Variable1:15.0.0.152
$Variable2:15.0.1.153

如果你想写一个简单的If问题,比如
($Variable1-gt$Variable2)
可能不是最好的解决方案,但你可以尝试以下方法:

[int]($Variable1.Split('.') -Join '') -gt [int]($Variable2.Split('.') -Join '')
更新!这就是你想要的:

[System.Version]$Version = "15.0.0.15"
[System.Version]$Version2 = "15.0.1.15"
$Version -gt $Version2

可能不是最好的解决方案,但您可以尝试以下方法:

[int]($Variable1.Split('.') -Join '') -gt [int]($Variable2.Split('.') -Join '')
更新!这就是你想要的:

[System.Version]$Version = "15.0.0.15"
[System.Version]$Version2 = "15.0.1.15"
$Version -gt $Version2

可能不是最好的解决方案,但您可以尝试以下方法:

[int]($Variable1.Split('.') -Join '') -gt [int]($Variable2.Split('.') -Join '')
更新!这就是你想要的:

[System.Version]$Version = "15.0.0.15"
[System.Version]$Version2 = "15.0.1.15"
$Version -gt $Version2

可能不是最好的解决方案,但您可以尝试以下方法:

[int]($Variable1.Split('.') -Join '') -gt [int]($Variable2.Split('.') -Join '')
更新!这就是你想要的:

[System.Version]$Version = "15.0.0.15"
[System.Version]$Version2 = "15.0.1.15"
$Version -gt $Version2

谢谢你的回复,但它没有按预期工作$variable1=“15.0.0.15”$Variable2=“15.0.1.5”[int]($variable1.Split(‘.)-Join’)-gt[int]($Variable2.Split(‘.)-Join’)TrueYes,这就是为什么这种方式不太好的原因。因为它只是将版本号“转换”为一个整数并进行比较。在这个例子中是150015和15015。因此,返回true的比较实际上是正确的,但不是您想要的。用更好的方法更新了我的答案。太好了!有时候这很容易!!:)谢谢你的回复,但它没有按预期工作$variable1=“15.0.0.15”$Variable2=“15.0.1.5”[int]($variable1.Split(‘.)-Join’)-gt[int]($Variable2.Split(‘.)-Join’)TrueYes,这就是为什么这种方式不太好的原因。因为它只是将版本号“转换”为一个整数并进行比较。在这个例子中是150015和15015。因此,返回true的比较实际上是正确的,但不是您想要的。用更好的方法更新了我的答案。太好了!有时候这很容易!!:)谢谢你的回复,但它没有按预期工作$variable1=“15.0.0.15”$Variable2=“15.0.1.5”[int]($variable1.Split(‘.)-Join’)-gt[int]($Variable2.Split(‘.)-Join’)TrueYes,这就是为什么这种方式不太好的原因。因为它只是将版本号“转换”为一个整数并进行比较。在这个例子中是150015和15015。因此,返回true的比较实际上是正确的,但不是您想要的。用更好的方法更新了我的答案。太好了!有时候这很容易!!:)谢谢你的回复,但它没有按预期工作$variable1=“15.0.0.15”$Variable2=“15.0.1.5”[int]($variable1.Split(‘.)-Join’)-gt[int]($Variable2.Split(‘.)-Join’)TrueYes,这就是为什么这种方式不太好的原因。因为它只是将版本号“转换”为一个整数并进行比较。在这个例子中是150015和15015。因此,返回true的比较实际上是正确的,但不是您想要的。用更好的方法更新了我的答案。太好了!有时候这很容易!!:)