考虑:
function func {
echo ALERT
return $false
}
if (func) {
Write-Output "TRUE"
}尽管函数返回false,但此代码仍会写入TRUE。但是,当我编写[void]echo ALERT时,PowerShell会抛出一个错误:
表达式或语句中的意外标记“echo”。
我如何修正这段代码?
发布于 2016-09-12 12:23:53
代码中的echo ALERT返回一个字符串(echo是Write-Output的别名)。
如果对字符串进行if检查,则PowerShell将检查字符串是否为空或空。
因此,它总是返回true。
如果要通知用户“警报”,请使用Write-Host。
function func {
Write-Host ALERT
return $false
}https://stackoverflow.com/questions/39450114
复制相似问题