gpt4 book ai didi

azure - 为什么使用 -notMatch 条件验证参数时会满足此条件?

转载 作者:行者123 更新时间:2023-12-03 00:40:36 24 4
gpt4 key购买 nike

我正在使用 Powershell 验证传递到发布管道的参数。我作为管道变量传递的参数是 val1。下面是我的代码:

if ("$(Value)" -notMatch "val1" -or "$(Value)" -notMatch "val2"){
Write-Host "$(Value) must be val1 || val2"
Write-Host "Value of param: "$(Value)""
exit 1
}

当我打印我的值时,状态为val1。为什么会满足这个条件呢?我想也许是因为它区分大小写,但是即使当我修改条件以捕获确切的大小写时,它仍然得到满足。

最佳答案

如果您的变量应该只有 val1val2,则必须使用 -and 而不是 -or .

if ("$(Value)" -notMatch "val1" -and "$(Value)" -notMatch "val2"){
Write-Host "$(Value) must be val1 || val2"
Write-Host "Value of param: "$(Value)""
exit 1
}

关于azure - 为什么使用 -notMatch 条件验证参数时会满足此条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66317987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com