我使用Register-ScheduledJob在後臺作業中的powershell中註冊作業我執行腳本。該腳本包含一些命令,如Get-Process和Write-Host命令。而且......Register-ScheduledJob和Write-Host
Altough每個命令在執行時導致我沒有看到寫主機(獲取進程是正常)輸出
也許有人知道爲什麼嗎?
我使用Register-ScheduledJob在後臺作業中的powershell中註冊作業我執行腳本。該腳本包含一些命令,如Get-Process和Write-Host命令。而且......Register-ScheduledJob和Write-Host
Altough每個命令在執行時導致我沒有看到寫主機(獲取進程是正常)輸出
也許有人知道爲什麼嗎?
寫主機寫入主機,這是運行腳本的應用程序(例如PowerShell.exe),所以它被顯式輸出到屏幕上,並且在非運行時沒有任何操作交互環境。您絕對不應該使用它來輸出要收集的數據,只能用於輕量級調試或在交互式腳本中打印到屏幕上。
對於要收集的數據,通常應該使用寫輸出作爲輸出。
儘管您也可以使用debug/warning/error輸出(由作業收集,但未在常規輸出中顯示)。
非常感謝。寫輸出幫助。
Additionaly我在最後的日子裏發現,並可能對他人有所幫助:如果你開始預定的後臺工作,並在這項工作開始PowerShell腳本是這樣的:
Register-ScheduledJob -Name1 temp -ScheduledJobOption $option -ScriptBlock {
D:\scprit.ps1
}
你的工作永遠不會因爲後結束腳本結束PowerShell窗口仍然打開。因此,除此之外,您必須在腳本塊中添加退出:
Register-ScheduledJob -Name1 temp -ScheduledJobOption $option -ScriptBlock {
D:\scprit.ps1
Exit-PSSession
}
非常感謝。 –