我有一个像这样的目录结构:
C:\mydir\foo\a.zip
C:\mydir\foo\b.zip
C:\mydir\bar\c.zip
C:\mydir\baz\d.zip
我想将C:\ mydir \ * \ * .zip中的所有文件移动到C:\ mydir,因此输出结构将是:
C:\mydir\a.zip
C:\mydir\b.zip
C:\mydir\c.zip
C:\mydir\d.zip
...多余的空文件夹可能仍然存在。如何仅使用DOS命令行完成此操作?
答案 0 :(得分:3)
试试这个:
CD /D C:\mydir
FOR /f "delims=" %a IN ('DIR *.zip /s /b') DO MOVE "%a" .
首先将目录更改为C:\mydir
。 DIR
列出了仅包含文件名的子目录中的所有zip文件。 FOR
确保每行都进入变量%a
。 MOVE
基本上将找到的每个文件移动到当前目录中,即C:\mydir
。