ImageMagick: конвертировать, чтобы сохранить одно и то же имя для преобразованного изображения

Я конвертирую .psd в .png файлы внутри папки с одним. Как сохранить одно и то же имя каждого файла в папке с другим расширением?

Например, я вхожу в изображения папок, а затем из терминала, который я выполняю

$ convert *.psd *.png

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

Ответы

Ответ 1

Используйте -set и форматирования.

convert *.psd -set filename:base "%[basename]" "%[filename:base].png"

См. " Длинные копии атрибутов атрибутов длинной формы " и "Документы с пропущенными именами файлов ".

Обновить

Также можно использовать утилиту mogrify, которая поставляется с imagemagick.

mogrify -format png *.psd

Примечание. Будьте осторожны с mogrify как состояние документов...

Этот инструмент аналогичен конвертированию, за исключением того, что исходный файл изображения перезаписывается (если вы не измените суффикс файла с опцией -format) с любыми запрошенными вами изменениями.

Ответ 2

Или, еще проще:

mogrify -format png *.psd

Ответ 3

Если вы находитесь в Linux, Unix или Mac OSX, вы можете использовать его в окне терминала с Bash shell:

for i in *.psd; do
     convert $i ${i/.psd/.png}
done

Я намеренно больше не рекламирую mogrify. Это слишком опасно для каждого пользователя, который этого еще не знает, и кто приходит на этот сайт, чтобы обратиться за помощью. mogrify перезаписывает ваши исходные файлы в некоторых случаях (конечно, не при преобразовании PSD- > PNG)