これは簡単な質問です。私は、特定のフォルダ内のすべてのファイルで動作するPowershell関数を持っています。ある機能を単一のフォルダ上で動作させたいときや、いくつかのフォルダ上で動作させたいときに、そのパスが配列に格納されていることがあります。 1つの要素に1つの要素と配列の両方を受け入れる方法がありますか?単一の要素は、foreachのは、与えられたアイテムを一度に実行されるようになります渡すPowershellの関数に文字列や文字列を渡す
function Do-Stuff($folders) {
foreach($f in $folders) {
//do something with $f
}
}
:
Do-Stuff $aSingleFolder
Do-Stuff $anArrayofFolders
おかげでニック。 – mack
問題ありませんが、私は間違いなくこのような機能を、たとえ小さくても好むでしょう。より大きなスケールで作業するために関数を書き換えるいくつかの時間がありました。よい一週間を! – Nick
'[String] $ Folders'を使って宣言されているように、この関数はパイプラインを通して渡された複数の値に対して_only_働くことに注意してください。パラメータ宣言を '[string []] $ Folders'に変更すると、' process'ブロックで 'foreach($ F in $ Folders)'を実行することができ、 'Do-Stuff'、 'Do -Stuff , '、および ', |やる気。 (ああ、バッククイックは不要です:継続括弧とカッコは数えます:) –