Конвертировать PDF в JPG, сохраняя одно и то же имя; изменить размер и создать превью, а затем переименовать?

У меня много файлов pdf (3308), на которых я должен применить четыре шага:

1) Мне нужно преобразовать все в jpg

Я нашел этот маленький скрипт в Интернете с ImageMagick: пакетное преобразование pdf в jpg

Я хочу сделать это, но я сохраняю свои файлы такими же именами, как и раньше: foo.pdf => foo.jpg Также я хотел бы, чтобы все изображения сохранялись в папке в «сценах»,

2) Затем я должен изменить размер до 612×792

3) Затем мне нужно создать эскизы в 255х330

4) Наконец, я должен переименовать их. В самом деле, у меня есть файл csv в котором есть их имена и новые имена

Вот пример некоторых строк.
Каждая строка соответствует «фактическому имени» файла «запятая» «новое имя». Есть 3308 строк, по одному на файл

 current_name,new_name foo,bar PS130_1060,55-large 

Как вы можете видеть, расширения не отображаются, потому что два файла находятся в формате jpg .

Я полностью потерян, я не знаю, использовать ли 4 скрипта или если это возможно в одном скрипте. Я часто работаю на PHP, но я хотел немного изменить bash, но мне немного жарко.

Вы можете мне помочь?

One Solution collect form web for “Конвертировать PDF в JPG, сохраняя одно и то же имя; изменить размер и создать превью, а затем переименовать?”

Вы можете начать вот так:

 for i in "$@"; do dst="${i%pdf}jpg" convert "$i" -resize 612x792 "$dst" convert "$i" -resize 255x330 "${i%.pdf}_thump.jpg" done 

И назовите это

 $ bash my_script.sh *.pdf 

Для переименования вы можете использовать другой скрипт. Я не понимаю ваш пример .csv-файла. Есть ли 3 строки для 3-х файлов? Хорошо, это так.

Вы можете переименовать файл со следующей командной строкой:

 $ awk -F, '{ system("echo mv \"" $1 "\" \"" $2 "\"") }' myrename.csv 

Awk выполняет команду echo ... для каждой строки, $1 – это значение первого поля строки, а $2 – значение второго поля. Цитирование \" необходимо в случае, если имя файла содержит пробелы. -F, говорит awk использовать запятую в качестве разделителя полей.

Если вы проверили эту команду, вы можете удалить echo для реального переименования файлов. Вы можете добавить -n в mv чтобы избежать случайной перезаписи существующих файлов.

  • Как ввести несколько имен файлов с меньшим количеством штрихов
  • Преобразование горизонтального изображения в вертикальное с использованием imagemagick, заполнение пустое пространство вокруг с черным
  • Как добавить невидимый водяной знак к изображениям в командной строке?
  • imagemagick - многократное расширение
  • Сценарий преобразования ImageMagick не создает эскизы
  • Объединение нескольких PDF-файлов в один (размещается в матрице)
  • Как открыть gif без повторения цикла с помощью oeg
  • Проблема цвета при захвате png верхней панели экрана
  • Imagemagick имеет проблемы с экранированием переменных оболочки
  • записывать эффекты изображения в виде анимаций
  • ImageMagick для нескольких файлов
  • Linux и Unix - лучшая ОС в мире.