Как извлечь первые 10 страниц из каждого PDF файлы папки

У меня есть 90 подпапок в папке. Каждая подпапка содержит файлы PDF. Общие файлы PDF - почти 2 200. Как я могу извлечь номер страницы 3 - 10 из всего pdfs?

Для извлечения страниц из одного PDF я использую следующую команду.

pdftk *.pdf cat 3-10 output 3-10.pdf
5
задан 8 July 2016 в 18:17

2 ответа

Этот лайнер (разделение в 2 строки для простоты чтения) был протестирован и работает хорошо над моей системой:

find . -name '*.pdf' -type f -exec bash -c \
'pdftk "$0" cat 3-10 output "${0%.pdf}_3-10.pdf"' {} \;

Просто откройте Окно терминала в основной папке (тот, который содержит все подпапки), и копия, и вставьте всю одну команду строки, данную выше. Это будет:

  1. Пересеките все подпапки и определите весь pdfs
  2. Страницы 3-10 извлечения от каждого (использование Вашей команды в качестве примера)
  3. Дайте разумное выходное имя файла: настоящее имя с _3-10 добавленный

И это должно аккуратно и экономно выполнить Вашу цель...

Изменение:

Дополнительно Вы могли дать другое выходное местоположение для сбора всех измененных документов PDF. Например, Вы могли создать названную папку ~/extracted и измените командную строку выше к следующему:

find . -name '*.pdf' -type f -exec bash -c \
'pdftk "$0" cat 3-10 output "~/extracted/${0%.pdf}_3-10.pdf"' {} \;

И таким образом все измененные файлы PDF появились бы в ~/extracted.

Бесконечные возможности :).

5
ответ дан 23 November 2019 в 09:12

Можно использовать qpdf, поскольку pdftk не доступен на человечности, бионической по умолчанию больше: find . -name '*.pdf' -type f -exec bash -c 'qpdf --empty --pages "$0" 3-10 -- "temp/${0%.pdf}_1.pdf"' {} \;

Это поместит новый PDF во временную папку.

1
ответ дан 23 November 2019 в 09:12

Другие вопросы по тегам:

Похожие вопросы: