我正在編寫一個在Windows Server 2012 R2上註冊和未註冊計劃任務的PowerShell腳本。我在這一行尤其是具有麻煩:什麼導致此PowerShell腳本錯誤?
Unregister-ScheduledTask -TaskPath "\Sensei\"
(老師是這個項目的代號,並且是包含所有我關心的任務文件夾的名稱。)
當我從ISE或命令行運行該命令,它工作正常。然而,當我從.ps1
文件運行它,它給了我一個徹頭徹尾的令人困惑的錯誤:
Unregister-ScheduledTask : Cannot retrieve the dynamic parameters for the cmdlet. Cannot bind argument to parameter 'TypeName' because it is null.
At Z:\server_scripts\clean.ps1:12 char:5
+ Unregister-ScheduledTask -TaskPath "\Sensei\"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Unregister-ScheduledTask], ParameterBindingException
+ FullyQualifiedErrorId : GetDynamicParametersException,Unregister-ScheduledTask
儘可能靠近我可以告訴大家,TypeName
不是一個參數Unregister-ScheduledTask
接受,所以它必須從某處內部現身到該cmdlet。
有沒有人有任何想法是什麼造成這個?
編輯:有人問了整個腳本。我省略了它,因爲沒有其他的說明。
cd Z:\server_scripts
. .\variables.ps1
#Delete config files
del $SENSEIPATH\assets.cfg
del $SENSEIPATH\Web\Web.config
#Remove the virtual application
Remove-WebApplication -Site $IISSITE -Name "c"
#Clean out the scheduled tasks
Unregister-ScheduledTask -TaskPath "\Sensei\"
.\variables.ps1
只是包含了一些變量定義,如$SENSEIPATH
或$IISSITE
。我不能在這裏發佈,但我保證沒有什麼幻想。
你能告訴我們腳本文件的全部內容嗎? – Sean
當然,但我懷疑有什麼有用的 –
你如何運行ps1文件。只需從PowerShell調用它? – Matt