編集:この問題が発生している完全な実装ではなく、ここのコードを単純なテスト ケースに変更しました。
ある Powershell スクリプトを別のスクリプトから呼び出そうとしていますが、期待どおりに動作しません。私が理解しているように、「&」演算子は配列を個別のパラメーターに展開することになっています。それは私には起こっていません。
発信者.ps1
$scriptfile = ".\callee.ps1"
$scriptargs = @(
"a",
"b",
"c"
)
& $scriptfile $scriptargs
呼び出し先.ps1
Param (
[string]$one,
[string]$two,
[string]$three
)
"Parameter one: $one"
"Parameter two: $two"
"Parameter three: $three"
実行.\caller.ps1
すると、次の出力が得られます。
Parameter one: a b c
Parameter two:
Parameter three:
私が経験している問題は $scriptargs
、配列が展開されておらず、むしろパラメーターとして渡されていることだと思います。PowerShell 2 を使用しています。
引数の配列で callee.ps1 を実行するように caller.ps1 を取得するにはどうすればよいですか?