Изменить несколько изображений из консоли [дубликат]

На этот вопрос уже есть ответ здесь:

Я знаю преобразовать изменения из формата изображения к другому. mogrify также может изменять размер и масштабирование нескольких изображений. Но КАК я могу изменить все изображения внутри каталога, включая подкаталоги. Например, измените каждое изображение внутри папки и ее подпапок с одного формата png на другой формат jpg.

Или измените размер всех изображений в папке и ее подпапках на желаемый.

2
задан 2 January 2011 в 00:59

1 ответ

Так как mogrify принимает список файлов, разделенных переносами строк, вы можете сделать это:

mogrify -equalize $(find -iname '*.png')

Я использую уравнение в качестве примера, но важный бит - последний.

  • Имя файла может быть любым выражением, которое выводит список файлов, я использую find -iname '*.png' в качестве примера. Вы можете поиграть с командой find, пока она не выдаст вам список нужных вам файлов.

Важно, чтобы любая команда, введенная вами в $(), возвращала список файлов с их правильным путем. ls -Ra просто вернет имя файла. Вывод find | grep png, с другой стороны, выглядит следующим образом:

./Webcam/lenovo-maverick-20110101-1.png
./lenovo-maverick-20110101-2.png
./lenovo-maverick-20110101-1.png

Где . означает «текущий рабочий каталог».

0
ответ дан 2 January 2011 в 00:59

Другие вопросы по тегам:

Похожие вопросы: