【问题标题】:Batch file for Moving all the pdf files in the subdirectories to a directory "PDF" which is created inside respective subdirectories用于将子目录中的所有 pdf 文件移动到在各个子目录中创建的目录“PDF”的批处理文件
【发布时间】:2014-03-04 11:49:22
【问题描述】:

我创建了一个批处理文件,将子目录中的所有 .pdf 文件移动到一个文件夹“PDF”,该文件夹是在运行批处理时在各个子目录中创建的。 当我运行我的批处理时,“PDF”文件夹在具有 .pdf 文件的子目录中创建,但文件没有被移动到相应的“PDF”文件夹,而是被移动到根目录中的 PDF 文件夹. 我在下面粘贴了我的代码。请帮我解决一下。

FOR /R D:\documentation\DZ_Batcher\FM_Docs\TEST\ %%a in (*.pdf) do (
 md %%~dpaPDF
 move "%%a" "PDF"
)

【问题讨论】:

  • 如果再次使用完整路径会怎样?
  • 另外,您应该检查目标文件夹中是否存在同名文件(使用完整路径,如npocmaka所示),并排除进程的最终PDF文件夹,或您将以PDF\PDF\PDF\ ... 文件夹链结束。

标签: batch-file


【解决方案1】:
for /d /r "D:\documentation\DZ_Batcher\FM_Docs\TEST" %%a in (*) do if /i "%%~nxa" neq "PDF" if exist "%%~a\*.pdf" (
    md "%%~a\PDF"
    move "%%a\*.pdf" "%%~a\PDF"
)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    • 2013-06-21
    相关资源
    最近更新 更多