У меня есть 90 подпапок в папке. Каждая подпапка содержит файлы PDF. Общие файлы PDF - почти 2 200. Как я могу извлечь номер страницы 3 - 10 из всего pdfs?
Для извлечения страниц из одного PDF я использую следующую команду.
pdftk *.pdf cat 3-10 output 3-10.pdf
Этот лайнер (разделение в 2 строки для простоты чтения) был протестирован и работает хорошо над моей системой:
find . -name '*.pdf' -type f -exec bash -c \
'pdftk "$0" cat 3-10 output "${0%.pdf}_3-10.pdf"' {} \;
Просто откройте Окно терминала в основной папке (тот, который содержит все подпапки), и копия, и вставьте всю одну команду строки, данную выше. Это будет:
_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
.
Бесконечные возможности :).
Можно использовать qpdf, поскольку pdftk не доступен на человечности, бионической по умолчанию больше: find . -name '*.pdf' -type f -exec bash -c 'qpdf --empty --pages "$0" 3-10 -- "temp/${0%.pdf}_1.pdf"' {} \;
Это поместит новый PDF во временную папку.