0

PowerShell v2.0 で次の 2 行のコードをジョブとして実行しようとしていますが、問題が発生しています。私は正しい構文を持っていると思いますが、それがすべきだと思うことをすることができないので、明らかに何か間違ったことをしています...

$report = <command line thing>
invoke-expression $report

これらの 2 行は PowerShell で機能します。しかし、それをstart-jobコマンドに入れようとすると:

start-job -scriptblock {invoke-expression $report} -argumentlist $report | wait-job | receive-job

次のエラーが表示されます。

Cannot bind argument to parameter 'Command' because it is null.
    + CategoryInfo          : InvalidData: (:) [Invoke-Expression], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.InvokeExpre
   ssionCommand
    + PSComputerName        : localhost

このエラーは、invoke-expression を渡す引数が null であると言っていると理解していますが$report-argumentlistparam を渡すことで、それが通り抜けると思っていましたか?

4

1 に答える 1