【问题标题】:How to create bulk empty files with incremental filenames in cmd/powershell?如何在 cmd/powershell 中创建具有增量文件名的批量空文件?
【发布时间】:2020-01-02 06:46:46
【问题描述】:

如果我想创建 10 个空的 .txt 文件,其名称模式为 abcd01.txtabcd02.txt、...、abcd10.txt。这在 CMD/PowerShell 中如何实现?

这就是我所做的:

for($i = 0; $i -lt 11; $i++){ New-Item -Path "C:\Users\FOO\Desktop\FOOBAR\abcd",$i,".txt" -ItemType File }

这创建了没有任何文件扩展名的文件。 0, 1, 2,..., 10.

然后我将所有文件重命名为:

 Dir -filter * | %{Rename-Item $_ -NewName ("abcd{0}.cpp" -f $nr++)}

是否有单行命令可以使'n' 具有特定'.xyz' 扩展名的空文件?

【问题讨论】:

  • 只是New-Item -Path "abcd$i.txt"?

标签: powershell cmd


【解决方案1】:

您可以在new-item 中使用的变量中格式化前导零:

for($i = 1; $i -lt 11; $i++){
    $path = "C:\temp\test{0:00}.txt" -f $i
    New-Item -Path $path
}

顺便说一句,您的new-item 没有添加任何扩展,因为

New-Item -Path "C:\Users\FOO\Desktop\FOOBAR\abcd",$i,".txt"

应该是

New-Item -Path "C:\Users\FOO\Desktop\FOOBAR\abcd$i.txt"


此外,如果您需要为名为@9​​87654327@ 的文件制作'n' 副本,您可以使用以下命令:
for($i=1; $i -lt 11; $i++){
    $path = "C:\temp\foo\test{0:00}.txt" -f $i
    New-Item $path
    $cont = Get-Content "foo.txt"
    Set-Content $path $cont
}

【讨论】:

    【解决方案2】:


    • 记录在案!使用 您可以通过以下方式执行此操作:

    在命令行中:


    for /l %N in (1 1 10)do @set "%N=0%N" && cmd /v /c "cd.>"c:\temp\test!%N:~-2!.txt""
    
    :: or ::
    
    for /l %N in (1 1 10)do @set "%N=0%N"&&cmd/v/c"cd.>"c:\temp\test!%N:~-2!.txt""
    


    在 cmd/bat 文件中:


    for /l %%N in (1 1 10)do set "%%N=0%%N" && cmd /v /c "cd.>"c:\temp\test!%%N:~-2!.txt""
    
    :: or ::
    
    for /l %%N in (1 1 10)do set "%%N=0%%N"&&cmd/v/c"cd.>"c:\temp\test!%%N:~-2!.txt""
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-30
      • 1970-01-01
      相关资源
      最近更新 更多