我想转换一组文件,但不覆盖现有文件。如何使用 mogrify 指定最终文件格式?例如firstpic.png -> firstpic-thumbnail.png、secondpic.png -> secondpic-thumbnail.png等。
gm mogrify -size 150x150 *.png -resize 150x150 +profile "*" "%f-thumbnail.png"
有没有办法做到这一点?
小智 5
我不知道是否有办法指定 mogrify 的输出文件格式,但我会使用convert简单的 bash 循环来代替:
for f in *.jpg;
do
convert "$f" -resize 150x150 +profile "*" "${f%.jpg}-thumbnail.jpg";
done;
Run Code Online (Sandbox Code Playgroud)
或者,如果您确实想使用,mogrify可以使用-output-directory(此处详细介绍此选项)将新文件放入单独的目录中,然后进行重命名:
mkdir tmp;
gm mogrify -output-directory tmp -size 150x150 -resize 150x150 +profile "" "*.jpg";
for f in tmp/*.jpg;
do
mv "$f" "${f%.jpg}-thumbnail.jpg";
done;
mv tmp/* .;
rm -rf tmp;
Run Code Online (Sandbox Code Playgroud)
我更喜欢第一种方法;)
| 归档时间: |
|
| 查看次数: |
2847 次 |
| 最近记录: |