Batchfile:如果存在,则将其移动到子目录

时间:2016-02-15 09:51:39

标签: batch-file

我几乎不使用批处理文件,我需要一个批处理文件,它将PDF文件移动到当前上下文路径中的新子目录“PDF”。

例如,我的目录树如下所示:

A/a.xml
A/b.xml
A/x.pdf
A/AA/a.xml
A/AA/y.pdf
B/z.pdf

批处理后的所需树:

A/a.xml
A/b.xml
A/PDF/x.pdf
A/AA/a.xml
A/AA/PDF/y.pdf
B/PDF/z.pdf

我的第一次尝试看起来像这样:

@ECHO OFF
FOR /r %%a IN (*.pdf) DO (
    MKDIR "%%~pa"/pdf
    MOVE %%a "%%~pa"/pdf
)

但是这会创建一个循环,因为批处理文件也会处理所有移动的PDF文件。任何帮助赞赏。谢谢!

1 个答案:

答案 0 :(得分:1)

bgaleas提示有助于阻止循环:

for /f %%A in ('dir *.pdf /b /s') do [...]