複数の引数を取る可能性のある複数のパラメーターを、次の形式で同時に呼び出したいスクリプトがあります。
.\MyScript.ps1 -q <int> --args <hostval1> <hostval2> ... <hostvaln>
現在、「q」以外のパラメーターがありますが、「--args」パラメーターは必要ありません。現在、次のようにパラメーターを定義しているため、「--args」を実装する方法がわかりません。
param(
[Alias('c')]
[string]$csv,
[Alias('h')]
[switch]$help,
[Alias('f')]
[switch]$fields,
[Alias('s')]
[string]$sql,
[Alias('q')]
[int]$query
)
次のように実行してホスト値を取得できることはわかっていますが、ダッシュが必要になります。
.\MyScript.ps1 -q 1 -hostval1 -hostval3 -hostval4
これにより、
$args[0] = -hostval1
$args[1] = -hostval3
$args[2] = -hostval4
「-q」でのみ呼び出すことができ、スペースで区切られた複数の値を受け入れる「セカンダリ」パラメーター (例: --args) を作成する方法はありますか? 別のパラメーターを作成することもできますが、これにより、「-q」パラメーターなしで誤って呼び出される可能性があり、引数の間にコンマが必要になります。
[string[]]$hostvals
私がやろうとしていることはpowershellで可能ですか? 私に何ができるか考えている人はいますか?