@bysobi

Как оптимизировать тысячи картинок с условием?

Добрый день.
Нужно оптмизировать очень много изображений(500тыс). Я делаю это командой
find . -type f \( -name "*.jpeg" -or -name "*.jpg" \) -exec mogrify x-quality 80 {} \; -exec jpegoptim -o --strip-all {} \;

А с помощью опции -resize x100 можно уменьшить их до 100х100
Вопрос: Как сделать команду с условием, если размер изображения выше 900(например в ширину или высоту) тогда уменьшаем его ПРОПОРЦИОНАЛЬНО до 900. Так вообще реально?
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 2
saboteur_kiev
@saboteur_kiev Куратор тега bash
software engineer
Добавить условия как-то так
if [[ $(mogrify identify -format "%w" {}) -gt 900 ]]; then INSERT_RESIZE_COMMAND; fi
if [[ $(mogrify identify -format "%h" {}) -gt 900 ]]; then INSERT_RESIZE_COMMAND; fi


Но вообще, вместо однострочника лучше уже скриптик написать, даже с функцией.
Ответ написан
Комментировать
Не шибко работал с ImageMagick но на просторах интенета говорят что вполне себе хватает вот такой хрени \>
Вот что то такое
find * -iname '*.jpg' -print0 | xargs -0 mogrify -resize 800x800\> -monitor -format jpg
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы