2016-01-04 2 views
0

На данный момент я использую эту команду для преобразования файла X.pdf в X.tif.Используйте Ghostscript для автоматического преобразования каждого файла в папку

gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=tif/X.tif pdf/X.pdf

Есть плавный способ сделать эквивалент

gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=tif/*.tif pdf/*.pdf как можно было бы сделать с скажем поисковых запросов? (Я заменил X на *) Очевидно, что это не работает с этим методом, но, может быть, есть похожий синтаксис? Или мне придется писать командный файл или что-то в этом роде?

PS: Я на OSX

ответ

0

Попробуйте сохранить это как tif2pdf в каталог, содержащий подкаталоги tif и pdf:

#!/bin/bash 

# Change into the "tif" directory to find the input files 
cd tif || { echo ERROR: Subdirectory tif not found; exit 1; } 

# Loop through all files ending in ".tif" 
for f in *.tif; do 

    # Determine output filename 
    out=${f%%tif} 
    out="../pdf/${out}pdf" 

    # Show the command we would run 
    echo gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile="$out" "$f" 
done 

Затем идут в этом каталоге в терминале и сделать этот скрипт исполняемым с:

chmod +x tif2pdf 

Затем запустите его:

./tif2pdf 

В настоящий момент он ничего не делает, кроме как показать вам, что он будет делать. Если вам нравится внешний вид команд, которые он составляет, отредактируйте скрипт и удалите слово echo в предпоследней строке и запустите его снова, чтобы на самом деле сделать преобразования.

Пример вывода

gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=../pdf/a.pdf a.tif 
gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=../pdf/b.pdf b.tif 

Я предлагаю запустить его на COPY ваших файлов первым.

+0

Спасибо! Он отлично работает, вы гений! Вы сделали это неправильно (TIF -> PDF в отличие от PDF-> TIF), но я исправил его. – luke

+0

К сожалению, извините! Я так привык к последнему файлу в команде, являющемуся выходным файлом со всеми программами, которые я обычно использую! –

+0

Все хорошо, спасибо за помощь, приятель. – luke

Смежные вопросы