2017-06-19 8 views
0

私のように私はTFSにおける引数の書式を設定しているMicrosoft TFSで複数のargumnetsを受け入れるPowershellスクリプトに選択した引数を渡すには?

.\script1.ps1 -Arg1 "Argument 1" -Arg2 "Argument 2" 

として引数を取り、スクリプト持っている:私はちょうどARG2に合格しようとすると、私は次のエラーを取得する

.\script.ps1 -Arg1 $($arg1) -Arg2 $($Arg2) 

パラメータ 'Arg1'の引数がありません。 'System.String []'型のパラメータを指定して、もう一度やり直してください。

+0

ps1ファイルの中で、 '[String] $ param1 'のようにparamの型をsystem.stringに変更するだけです。 –

+0

おそらく重複した質問があります:https://stackoverflow.com/questions/36142045/how-to-pass- parameters-to-powershell-script-from-tfs-build-process TFSのどのバージョンですか? – Curios

答えて

1

質問に応じて、変数を変数に入れます。そして、Arg2だけを渡そうとすると、$ Arg2変数の値を入力すると思う。

.\script.ps1 -Arg1 -Arg2 Arg2Value 

回避策このため引数を直接制御するための変数を使用することになります。このシナリオでは、PowerShellスクリプトは、次の形式が原因ARG1引数が空であるので、あなたが得たエラーメッセージがしますで実行されます。例えば、ビルド定義で2つの変数を追加:ARG1とARG2 enter image description here

そして、PowerShellスクリプトタスクの引数には、単に次のように入力します。これにより$(Arg1) $(Arg2) enter image description here

を、あなたは単に空にしARG1変数を設定することができますArg2を渡したい場合は、ビルドをキューイングします。

関連する問題