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。
我在這裏失蹤了什麼?
哎呦,這是真的。我忘記了 - 等標誌。感謝您指出。是的,在我使用了 - 等國旗之後,根本沒有必要使用睡眠。 –