3 回答

TA貢獻1830條經驗 獲得超9個贊
對排定的任務進行故障排除在后方很麻煩,因為您無法真正看到正在發生的事情。這些是您可能要檢查的一些事項:
檢查您的命令行原則上是否正常運行,例如,通過CMD運行它(在您的情況下,請嘗試運行powershell.exe -File "D:\script.ps1")。如果那給您帶來任何錯誤,則需要首先修復這些錯誤。
如果您打算以特定用戶身份運行任務,請以該用戶身份啟動CMD并運行相同的命令行,以檢查該用戶是否具有腳本正在執行的所有權限。
檢查你的任務實際終止或者如果進程仍在運行(通過Process Explorer中,Get-Process任務管理器,...)。
檢查上次運行結果中命令的退出代碼。
啟用計劃任務的歷史記錄(操作→啟用所有任務歷史記錄)。這將至少為您提供有關該任務正在執行的操作,是否開始執行以及是否/發生了哪些錯誤的一些信息。您需要管理權限才能啟用任務歷史記錄。
檢查事件日志中是否有與任務運行相關的錯誤/警告。
將日志記錄語句添加到您正在運行的腳本中以記錄進度信息。我個人更喜歡記錄到事件日志,因為這樣可以避免文件系統權限問題。
Write-EventLog -LogName Application -Source EventSystem -EventID 100 -EntryType Information -Message 'Your log message.'
如果您具有系統管理員權限,則可以注冊自己的事件源,并在上面的日志語句中使用該事件源,而不用濫用現有的源,例如EventSystem:
New-EventLog -Source MyEventSource -LogName Application
進一步的幫助將在很大程度上取決于您從這些步驟獲得的發現以及您的實際腳本代碼。

TA貢獻1796條經驗 獲得超7個贊
我所面對的主要觀察結果很少:
powershell.exe
嘗試給出完整的PS路徑,而不是僅僅給出C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
。許可是另一個需要關注的問題。您正在通過其運行任務的用戶可能沒有運行該任務的權限。
執行策略:確保使用繞過執行策略
-ExecutionPolicy Bypass
。確保您以“ 最高特權”運行任務。
最后,通過分析日志。

TA貢獻2065條經驗 獲得超14個贊
我發現此站點非常有用:http : //www.microsoftpro.nl/2011/07/07/how-to-schedule-a-powershell-script-using-scheduled-tasks-in-windows-server-2008 -r2 /
我還更改了安全選項屬性,它有所幫助。
我沒有檢查:不要存儲密碼,現在它可以在不登錄網絡的情況下運行。
- 3 回答
- 0 關注
- 1699 瀏覽
添加回答
舉報