Объединение файлов PDF с помощью ghostscript: возможно ли передать вывод поиска в gs?

Объединение файлов PDF с помощью ghostscript: возможно ли передать вывод поиска в gs?

Я хочу объединить несколько файлов PDF в один. Найденоэтот отличный ответна SO, но тут есть проблема. Мои pdf-файлы не в одном каталоге, поэтому по сути я хочу сделать вызов findи передать вывод в gs, что-то вроде этого:

find . -path "*_somedir/*" -name "some.pdf" -print0 | gs ...

Я проверил страницы руководства, gsно там нет информации об аргументах с завершающим нулем, поэтому я не уверен, как передать аргументы из findв gs. Я предполагаю, что если я пропущу флаг -print0, он выполнит gsвызов после первого аргумента.

Есть идеи? Я, конечно, открыт для других способов объединения pdf-файлов, но я бы хотел избежать установки новых пакетов, поскольку это будет сделано на сервере сообщества.

решение1

Один из способов сделать это, предполагая, что GNU find(1)и GNU xargs(1):

find /some/dir -type f -name '*.pdf' -print0 | \
    xargs -0 gs -q -dNOPAUSE -sDEVICE=pdfwrite -dBATCH -sOUTPUTFILE=out.pdf

Однако PDF-файлы — сложные звери. Ожидайте неоднозначных результатов.

Связанный контент