Ранее я рассказывал как можно оптимизировать изображения в формате jpg с помощью пары утилит и простенького скрипта. Сегодня задача ещё проще — нужно провести конвертацию кучи png файлов в горячо обожаемый формат jpg. Вновь обратимся к универсальному convert.
Скрипт png2jpg.sh в самом начале проверяет установлена ли утилита convert. Если скрипт не находит команду — будет выведена соответствующая ошибка. Следующий шаг — поиск всех файлов формата png, проверка их наличия в процессе работы цикла и сам процесс конвертации с заменой расширения файла.
#!/bin/bash
# Проверяем, установлена ли программа convert #
if ! command -v convert &> /dev/null; then
echo "ImageMagick не установлен. Установите его и попробуйте снова."
exit 1
fi
# Перебираем все файлы с расширением .png в текущей директории #
for png_file in *.png; do
# Проверяем, если файл существует #
if [[ -f "$png_file" ]]; then
# Заменяем расширение .png на .jpg и сохраняем в переменную #
jpg_file="${png_file%.png}.jpg"
# Конвертируем png в jpg #
convert "$png_file" "$jpg_file"
echo "Конвертировано: $png_file --> $jpg_file"
fi
done
Конечно, не забываем объявить скрипт исполняемым:
chmod +x png2jpg.sh
Если не устраивает копипаста — жмём на кнопку или юзаем wget: