我写了一个脚本来检查将字符串提交到网页的结果。
然后我检查结果字符串是否包含某个子字符串,并且脚本应相应地使用if循环。
出于某种原因,假设包含字符串的变量等于$null
。
奇怪的是 - 这只发生在我将脚本作为脚本运行时,而不是在ISE中运行特定命令行时。
代码的相关部分是:
$Result = $($objIE.Document.getElementById("JSONResultDiv")).innertext
if ($Result -like "*true*")
{
Write-Host "True"
}
else
{
Write-Host "False"
}
我尝试使用Set-PSDebug -Trace 2
并且它向我显示该语句是真的,但脚本仍然执行了false子句(?!)
此外,如果我在定义变量之后放置Write-Host $result
它是有效的。与断点相同。如果我在检查语句之后和输入if循环之前设置断点,则表明它定义了变量。
我感到困惑,我错过了什么?