function func {
echo ALERT
return $false
}
if (func) {
Write-Output "TRUE"
}
尽管函数返回false,但此代码写为TRUE。但是,当我写[void]echo ALERT
Powershell抛出错误
表达式或语句中出现意外的标记'echo'。
如何修复此代码?
答案 0 :(得分:1)
echo ALERT
返回一个字符串(echo
是Write-Output
的别名)
如果对字符串进行if检查,PowerShell会检查字符串是否为空或空。
因此它总是返回true。
如果您想提醒用户注意" ALERT",请使用Write-Host
。
function func {
Write-Host ALERT
return $false
}