我正在使用此批处理文件来合并PDF文件,它正在运行,但仅适用于名称中没有空格的文件。对于'test file.pdf',它给出了一个错误〜找不到文件test和file.pdf。我该如何更换“* .PDF”以使其正常工作?
@echo on
setlocal enabledelayedexpansion
FOR %%A IN ("*.PDF") DO (set command=!command! %%A)
%~dp0\pdftk.exe %command% cat output "%~dp1merged_PDF.pdf"
答案 0 :(得分:0)
将set command=!command! %%A
替换为set "command=!command! "%%~A""
。
要在其父文件夹之后命名合并文件,您可以像这样确定父文件夹名称:
for %%a in ("%~dp1.") do set "name=%%~nxa"
然后像这样创建输出文件:
%~dp0\pdftk.exe %command% cat output "%~dp1%name%.pdf"