我如何才能仅根据扩展名复制具有特定扩展名的某些文件(但更改扩展名)?
我尝试仅显示这些文件但没有任何结果:
@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 ?