関数はコマンドレットのように動作します。つまり、dir(c:\ temp)とは入力しません。関数は同様に、スペースで区切られたパラメーターを取り、コマンドレットのように、位置パラメーター、名前付きパラメーター、およびオプションのパラメーターをサポートします。
Greet Recardo 5
Greet -times 5 -name Ricardo
PowerShellは()を使用して、次のような式を指定できるようにします。
function Greet([string[]]$names, [int]$times=5) {
foreach ($name in $names) {
1..$times | Foreach {"Hi $name"}
}
}
Greet Ricardo (1+4)
Great Ricardo # Note that $times defaults to 5
カンマ区切りのリストを使用して、単純な配列を指定することもできます。例:
Greet Ricardo,Lucy,Ethyl (6-1)
したがって、そのようなものを渡すと、 2つの要素と("Ricardo",5)
を含む配列である単一のパラメータ値として評価されます。これはパラメーターに渡されますが、パラメーターの値はありません。"Ricardo"
5
$name
$times
括弧で囲まれたパラメータリストを使用するのは、.NETメソッドを呼び出すときだけです。
"Hello World".Substring(6, 3)