引数の配列をpowershellスクリプトファイルに渡そうとしています。Powershellコマンドラインに引数の配列を渡す方法
私はこのようなコマンドラインをコマンドラインで渡そうとしていました。
PowerShellの-file "InvokeBuildscript.ps1" "Z:\" "コンポーネント1"、 "コンポーネント2"
しかし、それはそれはそうなパラメータを取りません。私は何が欠けていますか?引数の配列を渡す方法は?
引数の配列をpowershellスクリプトファイルに渡そうとしています。Powershellコマンドラインに引数の配列を渡す方法
私はこのようなコマンドラインをコマンドラインで渡そうとしていました。
PowerShellの-file "InvokeBuildscript.ps1" "Z:\" "コンポーネント1"、 "コンポーネント2"
しかし、それはそれはそうなパラメータを取りません。私は何が欠けていますか?引数の配列を渡す方法は?
test.ps1
場合です
Powershell -command "c:\pathtoscript\InvokeBuildscript.ps1" "z:\" "Component1,component2"
を試してみてください。
$args[0].GetType()
$args[1].gettype()
は次のようにシェルドスからそれを呼び出す:
C:\>powershell -noprofile -command "c:\script\test.ps1" "z:" "a,b"
リターン:
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
True True Object[] System.Array
短い答え:より多くの二重引用符を助けることができる...
スクリプトは "test.ps1" であると仮定しparam(
[Parameter(Mandatory=$False)]
[string[]] [email protected]()
)
$PSBoundParameters
配列@(123を渡したいと仮定、 "ABC"、」 X、Y、Z ")PowerShellコンソール下
は、Windowsのコマンドプロンプトコンソール下またはWindowsのTaの配列
.\test.ps1 -input_values 123,abc,"x,y,z"
として複数の値を渡しますskスケジューラ;二重引用符が3二重引用符
powershell.exe -Command .\test.ps1 -input_values 123,abc,"""x,y,z"""
によって置き換えられているが、ここでのトリックは-command`代わり-file` ``の明示的な使用することです、それはいくつかの
を助けることができる願っています。 –