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

时间:2015-01-05 11:46:32

标签: imagemagick imagemagick-convert

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

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

$ convert *.psd *.png

但是它给.png命名只是与适当的.psd图像不同的数字。

4 个答案:

答案 0 :(得分:41)

使用-set和格式化选项。

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

参见" Long Form Attribute Percent Escapes"和" Filename Percent Escapes"文档。

<强>更新

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

mogrify -format png *.psd

注意:请注意mogrify作为文档说明......

  

此工具与转换类似,只是原始图像文件被覆盖(除非您使用-format选项更改文件后缀)以及您请求的任何更改。

答案 1 :(得分:11)

或者,甚至更简单:

mogrify -format png *.psd

答案 2 :(得分:9)

如果您使用的是Linux,Unix或Mac OSX,则可以在带有Bash shell的终端窗口中使用:

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

我故意不再宣传mogrify。对于每个不了解它的用户来说太危险了,谁来到这个网站寻求帮助。 mogrify在某些情况下会覆盖您的原始文件(当然不是在转换PSD-&gt; PNG时)

答案 3 :(得分:1)

我喜欢top answer

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

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

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