我試圖通過PowerShell腳本使用invoke-command使用配置文件作爲參數運行可執行文件。使用Invoke-Command運行帶有參數的可執行文件
以下是我在我的PowerShell腳本至今:
$config = 'D:\EmailLoader\App.config'
invoke-command -ComputerName SERVER-NAME -ScriptBlock {param($config) & 'D:\EmailLoader\GetMailAndAttachment.exe' $config} -ArgumentList $config
然後我用下面的命令執行PowerShell腳本:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -File "D:\PowerShellScripts\Email.ps1"
而且我得到以下錯誤:
Unexpected token 'config' in expression or statement.
At D:\PowerShellScripts\Email.ps1:3 char:121
+ invoke-command -ComputerName SERVER-NAME -ScriptBlock {param($config) 'D:\EmailLoader\GetMailAndAttachment.exe' $config <<<< } -ArgumentList $config
+ CategoryInfo : ParserError: (config:String) [], ParentContainsE rrorRecordException
+ FullyQualifiedErrorId : UnexpectedToken
那麼,你面臨的實際問題是什麼?你描述了你正在嘗試做什麼(這應該是AFAICS的工作原理),但沒有發生什麼問題。 –
@AnsgarWiechers我編輯了該問題以包含錯誤。 – ASindleMouat
我會建議檢查這個問題。 http://stackoverflow.com/questions/4225748/how-do-i-pass-named-parameters-with-invoke-command – Ironic