1

VB.NetのParamArrayに似た、param配列をサポートする関数を作成したいと思います。

function foo{ 

   param(
     $a,
     $b, 
     [Array]$arr
   )

   write-host "a: $a"
   write-host "b: $b"   
   write-host "arr: $arr"

   Foreach($s in $arr) {
     write-host $s
   }

} 

PS> foo -a "abc" -b "123" -c 456 -d 789

残念ながら、パラメータ「c」と「d」は見つかりません。Param()私のニーズをサポートするために定義を構造化する方法はありますか?

4

1 に答える 1

1

PowerShell には、$args追加のパラメーターを含む自動変数があります。

実行してみてください:

function foo {
    param(
        $a,
        $b
    )

    "a: $a"
    "b: $b"
    foreach($arg in $args) { 
        "Arg: $arg"
    }
}

foo -a 1 -b 2 3 4 5

出力:

a: 1
b: 2
Arg: 3
Arg: 4
Arg: 5
于 2013-03-19T17:32:24.503 に答える