ImageMagick:转换为转换后的图像保持相同的名称

ImageMagick: convert to keep same name for converted image

我正在将文件夹内的 .psd 文件转换为 .png 文件。如何在不同扩展名的文件夹中保持每个文件的名称相同?

例如,我输入文件夹图像,然后从终端执行

$ convert *.psd *.png

但它为 .png 提供的名称只是与适当的 .psd 图片不同的数字。

如果您使用的是 Linux、Unix 或 Mac OSX,您可以在终端 window 中使用 Bash shell :

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

我特意不打广告了mogrify。对于每个还不知道它并来到本网站寻求帮助的用户来说,这太危险了。 mogrify 在某些情况下会覆盖您的原始文件(当然不是在转换 PSD->PNG 时)

使用 -set 和格式设置选项。

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

参见“Long Form Attribute Percent Escapes" and "Filename Percent Escapes”文档。

更新

也可以使用 imagemagick 附带的 mogrify 实用程序。

mogrify -format png *.psd

注意:小心 mogrify 作为文档状态...

This tool is similiar to convert except that the original image file is overwritten (unless you change the file suffix with the -format option) with any changes you request.

或者,更简单:

mogrify -format png *.psd

我喜欢 ,

也就是说,在 ImageMagick 的更高版本中,命令是

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

@jan-glx 和@jomel imperio 也提到了