使用批处理根据一个扩展名制作重复文件

使用批处理根据一个扩展名制作重复文件

我如何才能仅根据扩展名复制具有特定扩展名的某些文件(但更改扩展名)?

我尝试仅显示这些文件但没有任何结果:

@echo off

for %%f in (*.ext) do(
  echo %%~nf
)
pause

我的另一个选择是复制所有这些文件,然后在不同的文件夹中更改它们的扩展名。任何帮助都将不胜感激

答案1

在旧的 DOS 时代我们使用这个:

@echo off

copy *.{ext} {destination path}\*.{new ext}

例子:

我想将我的所有 Sketchup 文件从临时下载文件夹复制到我的用户文件夹中的 Sketchup_Files 文件夹。

我使用命令行创建了一个文本文件:

@echo off

copy *.skp C:\Users\Me\Sketchup_Files\*.txt

我将此文件保存为 .bat 并将其粘贴到我的目标文件夹 {Temp Download}

祝你好运。

答案2

for %f in (*.ext) do copy "%~f" "%~nf - Copy%~xf"将复制同一目录中具有指定扩展名的所有文件,并在后面附加“-Copy”,就像 Windows 资源管理器一样。

如果在批处理文件中使用它,请记住将所有 % 符号加倍。

答案3

类似这样的问题copy *.ext *.ex2 ?

相关内容