2015-10-16 65 views
-1

我知道這已被問了1000次,我想我通過所有這些。計劃任務和PowerShell腳本不被執行

我已經安排了在其他服務器上運行PowerShell腳本的任務,但沒有在此服務器上運行。哪個讓我撓頭,爲什麼我不能在這臺服務器上運行它。

我在Windows 2008 R2服務器上有一個powershell腳本。我可以手動運行它,它可以完美運行,但是當我嘗試從計劃任務運行它時,歷史記錄顯示它已運行,但PowerShell腳本未執行。

PSRemoting啓用

服務器ExecutionPolicy是 「RemoteSigned就是」

我得到的歷史

  1. 行動已完成 任務計劃順利完成任務的兩個條目 「\處理」,例如「{dbbd4924-42d6-4024-a8ed-77494c7f84cf}」,動作「C:\ Windows \ System32 \ WindowsPowerShell \ v1.0 \ PowerShell.EXE」,返回碼爲0。

  2. 任務合計 任務計劃程序成功完成用戶「domain \ user」的「\ Processing」任務的「{dbbd4924-42d6-4024-a8ed-77494c7f84cf}」實例。

計劃任務看起來是這樣的:

  1. 我設置爲我的帳戶下運行,而我登錄。 (因爲我可以像我一樣手動運行該腳本)
  2. 檢查以最高特權運行。
  3. 觸發就是每10分鐘
  4. 啓動一個程序操作運行.... Powershell.exe
  5. 參數:-ExecutionPolicy下RemoteSigned - 文件d:\ ABC \ DEF \ PowerShell的\ Processing.ps1
  6. 條件&設置默認設置。
+0

那麼失敗的是什麼?任務計劃程序報告成功,這意味着'powershell.exe'運行成功。我猜這意味着你沒有從你的腳本中獲得想要的結果。如果是這種情況,請發佈腳本的內容。 – briantist

+0

如果我在計劃任務外運行powershell腳本,它會正確運行並顯示所需的結果。 –

+0

是的,但是*我們*不知道你想要的結果是什麼,而且我們也不知道腳本的功能。考慮到行爲,僅任務參數是不夠的。作爲任務運行時,您可以執行的某些操作的行爲會有所不同。不知道你在做什麼,我們無能爲力。發佈代碼。 – briantist

回答

0

確保你不會被阻止權限問題與任務: http://blogs.technet.com/b/askperf/archive/2012/04/18/task-scheduler-error-a-specified-logon-session-does-not-exist.aspx

以上GPO防止被保存的憑據。其他用戶權限分配設置可以防止以批處理/腳本/任務/等的方式運行。

作爲解決方法,您還可以將任務設置爲使用powershell任務運行.bat文件。添加回顯或管道參數可能會爲您提供有關此問題的一些線索。

0

我建議您應該在腳本中添加一些診斷日誌記錄來找出導致此問題的地方或將此腳本的輸出重定向到文件。例如。改變你的字符串參數是這樣的:

-executionpolicy remotesigned -File D:\abc\def\powershell\Processing.ps1 2>&1 d:\output.log

貌似腳本執行,但不順心的事。這種行爲的原因太多,沒有代碼就很難找到根本原因。

相關問題