1

Я хочу создать командный файл для объединения выбранных файлов PDF в алфавитном порядке. В настоящее время у меня есть следующий скрипт:

    @echo off
setlocal enabledelayedexpansion
FOR %%A IN (%*) DO (set command=!command! %%A)
pdftk.exe %command% cat output "%~dp1binder.pdf"

Файл сценария сохраняется как файл .cmd, а его ярлык помещается в папку «SHELL:SENDTO». Поэтому можно выбрать некоторые файлы .pdf, щелкнуть правой кнопкой мыши и запустить файл, чтобы создать файл binder.pdf, представляющий собой копию выбранных файлов PDF, объединенных вместе.

Осталась только одна проблема: пакетный файл создает pdf в случайном порядке, когда я выбираю 15+ .pdf файлов. Можно ли убедиться, что выбранные файлы .pdf объединены в алфавитном порядке?

1 ответ1

1

Я уверен, что есть более простой способ сделать это, но вот моя первая попытка:

setlocal enabledelayedexpansion

:: Save all names to temporary file
if exist pdfs.txt del pdfs.txt
for %%a in (%*) do echo %%a >> pdfs.txt

:: Loop over sorted names
for /f "usebackq" %%a in (`type pdfs.txt ^| sort`) do (set command=!command! %%a)
pdftk.exe %command% cat output "%~dp1binder.pdf"

:: Clean up
del pdfs.txt

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .