基于变量匹配情况设置$Status与$VariableResult的实现问询
PowerShell 变量判断逻辑实现方案
核心需求
基于$variableA、$variableB、$VariableC的值,设置$Status和$VariableResult:
- 当
$variableA等于$variableB时,$Status = $true - 当
$variableA不等于$variableB时:$variableB非空 →$Status = $false,$VariableResult = $variableB$variableB为空 →$Status = $false,$VariableResult = $VariableC
实现代码
# 可替换为实际业务的变量初始值 $variableA = "A" $variableB = "B" $VariableC = "C" $VariableResult = $null $Status = $null # 执行判断逻辑 if ($variableA -eq $variableB) { $Status = $true } else { $Status = $false # 判断$variableB是否为空,为空则取$VariableC的值,否则取$variableB的值 if ([string]::IsNullOrEmpty($variableB)) { $VariableResult = $VariableC } else { $VariableResult = $variableB } }
逻辑说明
- 优先处理匹配成功的场景,直接设置
$Status为$true - 不匹配场景统一设置
$Status为$false,通过嵌套判断明确$VariableResult的取值,避免冗余逻辑 - 初始将
$VariableResult设为$null,确保只有$variableA不匹配时才会被赋值,贴合预期效果
内容的提问来源于stack exchange,提问作者Bash
相关产品推荐
相关产品推荐

