1
我在powershell中编写了一个小实用程序函数来获取JavaVersion。Powershell不会保持变量引用,直到我设置断点
function GetJavaVersion(){
start-process java -ArgumentList "-version" -NoNewWindow -RedirectStandardError .\javaver.txt
$javaver = Get-Content .\javaver.txt
#just wait here for file to get released.
Start-Sleep -s 5
Remove-Item .\javaver.txt -Force
return $javaver;
}
如果我运行此代码如下;
GetJavaVersion
它只是不会在控制台上打印任何东西。
但是,如果我在$javaver = Get-Content .\javaver.txt
行设置了中断点,并且一步一步地按预期打印内容。
我的PS版本5.1.14393.1358。
我在这里失踪了什么?
哎呦,这是真的。我忘记了 - 等标志。感谢您指出。是的,在我使用了 - 等国旗之后,根本没有必要使用睡眠。 –