Powershell:将args传递给远程会话时出现Null Array异常

时间:2017-03-27 12:54:30

标签: powershell invoke-command

我正在尝试在远程会话上运行命令,但我得到了一个

  

无法索引到空数组。       + CategoryInfo:InvalidOperation:(:) [],RuntimeException       + FullyQualifiedErrorId:NullArray       + PSComputerName:serverName

我已经检查了我传递给远程会话的所有参数,但没有一个是null。以下是命令:

Invoke-Command -Session $session -ScriptBlock {Start-Process $args[0] -ArgumentList $args[1] -RedirectStandardOutput $args[2] -RedirectStandardError $agrs[3]} -Args $Consoledir,$arguments,$stdOutLog,$stdErrLog;

我正在使用此命令来运行在$ dir参数(D:\ Temp \ console.exe)中传递的控制台应用程序。此应用程序进一步采用在$ arguments参数中传递的一些参数。

1 个答案:

答案 0 :(得分:0)

试试这个:

Invoke-Command -Session $session -ScriptBlock {
    Param($dir, $args, $outlog, $errlog)    
    Start-Process $dir -ArgumentList $args -RedirectStandardOutput $outlog -RedirectStandardError $errlog
} -ArgumentList $Consoledir,$arguments,$stdOutLog,$stdErrLog;