Я удивлен, что не смог найти простой сценарий для этого онлайн. У меня есть каталог с большим количеством подкаталогов, каждый из которых заполнен TIFF. Как можно конвертировать подпапки нескольких изображений (TIFF) в отдельные PDF-файлы, каждый из которых назван в честь родительских папок? Решение CLI и возможность установить выходной каталог предпочтительнее

ех.
dir > 1998 > Jan011998 > 1.tif 2.tif ... → Jan011998.pdf (or, ideally, 1998-01.pdf)
dir > 1999 > 02231999 > 1.tif 2.tif ... → Feb231999.pdf (or 1999-02-23.pdf)

2 ответа2

0

Программа pdftk (PDF toolkit) позволяет объединять несколько файлов PDF в один большой выходной файл PDF.

$ pdftk in1.pdf in2.pdf in3.pdf cat output big_out.pdf
0

Вот небольшой скрипт, который должен сделать свое дело:

#!/bin/bash

dirs=$(find . -type f -name "*.tiff" | xargs dirname |sort -u)

for d in $dirs; do
    #ls $d/*.tiff  # just debug info, should list all desired tiffs
    #echo $(cut -d/ -f3 <<<$d)  # debug info, should be desired output file name
    convert $d/*.tiff $(cut -d/ -f3 <<<$d).pdf

done

Во-первых, find используется для определения всех каталогов, содержащих файлы TIFF. Затем мы используем convert ImageMagick для преобразования всех файлов TIFF в каждом каталоге в файл PDF, имя которого создается из каталога. Вы можете легко включить другой выходной каталог:

    convert $d/*.tiff somewhereElse/$(cut -d/ -f3 <<<$d).pdf

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