使用 PowerShell md(或 mkdir、New-Item...)创建多个目录的语法相当于'nix 命令,mkdir ch{1..9}
即
~/parent_dir/
ch1/
ch2/
ch3/
ch4/
ch5/
ch6/
ch7/
ch8/
ch9/
我查看了手册页和 get-help 中的示例,但我不知道 PowerShell 的语法如何执行如此简单的事情。谢谢。
答案1
使用 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
答案2
答案3
在当前目录下创建多个目录:
mkdir ('abc','def','jkl')
以上是以下内容的简写版本。请注意字符串数组前面的 at 符号以及命名参数的使用:
mkdir -Path @('abc','def','jkl')
如果你想一路走下去,完整的本机命令将是:
New-Item -Path @('abc','def','jkl') -ItemType Directory
使用 PowerShell 命令行时,我使用简短版本。
在编写脚本时,尤其是为其他人(可能不熟悉 PowerShell)编写脚本时,我倾向于编写完整的本机命令。
选择最适合您的方法。
答案4
我会使用 for 循环版本,因为它容易记住并且可以应用于许多情况。它甚至可以用于多个命令。
与此 bash 命令等效的命令是:
对于我在 {1..9} 中;执行
mkdir ch$i
完成
...在 PowerShell 中使用:
for($i=1;
$i -le 10;
$i++)
{md ch$i}