将所有文件递归复制到一个文件夹中(无需重新创建文件夹)

Bas*_*asj 4 directory xcopy batch-file

使用批处理(.bat),我想复制D:\ TEMP的1个子目录中的所有mp3文件

D:\TEMP\\(anyfolder)\\(anyfile.mp3)
Run Code Online (Sandbox Code Playgroud)

E:\MYFOLDER\
Run Code Online (Sandbox Code Playgroud)

我试过xcopy但是

  • 我不知道如何判断"只是递归D:\ TEMP的子文件夹而不是子文件夹,子子文件夹等"

  • 使用xcopy时,在目标中创建文件夹(为了复制源文件夹树),我不希望这样:文件应该只复制到一个文件夹中.

提前致谢!

PA.*_*PA. 10

for命令是你的朋友.阅读help for然后在命令提示符下尝试此操作

for /d %a in (*) do @echo %a
Run Code Online (Sandbox Code Playgroud)

如您所见,它跟随当前目录中的所有子文件夹.

从而,

for /d %a in (*) do @copy %a\*.mp3 e:\myfolder
Run Code Online (Sandbox Code Playgroud)

将所有mp3复制到目标文件夹.