gpt4 book ai didi

powershell - 如何在条件语句中设置变量?

转载 作者:行者123 更新时间:2023-12-02 22:15:53 25 4
gpt4 key购买 nike

我有一个脚本,它通过分析日志文件以寻找损害的指标来检查PC的运行状况。如果脚本找到某个事件ID,它将返回规范化消息。最终目标是对这些返回进行数学计算-这将为该PC生成健康评分。

我需要知道的是,如果找到事件ID,如何设置变量(例如X的值为1),如果找不到事件ID,则如何设置相同的变量(例如X的值为2)。如果我只在脚本中设置了两个变量-在它们各自的if/else块中,不管条件如何,最后一个变量是否总是会覆盖第一个变量?

最佳答案

不幸的是,PowerShell没有像Perl($var = (<condition>) ? 1 : 2;)这样的条件赋值语句,但是您可以将if语句的输出分配给变量:

$var = if (<condition>) { 1 } else { 2 }

当然,您也可以执行“经典”方法,并直接在相应的分支中分配变量:
if (<condition>) {
$var = 1
} else {
$var = 2
}

第二个赋值不会取代第一个赋值,因为根据条件的结果,实际上只执行其中一个。

另一个选择(具有更多的hack值)是根据条件的 bool 结果来计算值。取反 bool 值,将其强制转换为int并加1:
$var = [int](-not (<condition>)) + 1

关于powershell - 如何在条件语句中设置变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32515712/

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