我正在将.psd转换为文件夹内的.png文件。如何在不同扩展名的文件夹中保留每个文件的相同名称?
例如,我输入文件夹图像,然后从终端I执行
$ convert *.psd *.png
但是它给.png命名只是与适当的.psd图像不同的数字。
答案 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也提到过