New-Item
のため、mkdir を複数回呼び出す必要はありません。 パスの配列を取ることができます。例:
mkdir $(1..9 | %{"ch$_"})
@DavidPostill は、彼の回答でほとんどの概念を説明しています。これはまた、明示的な連結を実行する代わりに、文字列補間を利用します。さらに、%
ForEach-Object
の代わりに短縮形が使用されます 、しかし同じ意味を持ちます。
残念ながら、bash のように文字列を文字列の配列に補間する簡単な方法はないようです。
PowerShell で複数のディレクトリを作成する構文は何ですか
次のコマンドを使用してください:
0..9 | foreach $_{ New-Item -ItemType directory -Name $("ch" + $_) }
仕組み:
0..9
範囲演算子..
0、1、... 9 の数列を生成します- 数値は
|
パイプライン処理されます 次のコマンドへ foreach
ループ (各番号を順番に){ ... }
スクリプト ブロックですNew-Item -ItemType directory -Name $("ch" + $_)
ディレクトリを作成します$_
パイプライン内の現在のオブジェクト (数値) を表す自動変数です
例:
> 0..9 | foreach $_{ New-Item -ItemType directory -Name $("ch" + $_) }
Directory: F:\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 25/09/2016 14:57 ch0
d----- 25/09/2016 14:57 ch1
d----- 25/09/2016 14:57 ch2
d----- 25/09/2016 14:57 ch3
d----- 25/09/2016 14:57 ch4
d----- 25/09/2016 14:57 ch5
d----- 25/09/2016 14:57 ch6
d----- 25/09/2016 14:57 ch7
d----- 25/09/2016 14:57 ch8
d----- 25/09/2016 14:57 ch9