例如我有两个文件:
aaa.jpg (with cat)
aaa.png (with dog)
如您所见,图像是不同的,尽管它们的名称相同。
我想将这两个图像转换为一种格式。
这个任务的基本尝试是
mogrify -format jpg *.png
但它不起作用,原因很明显(一个文件夹不能包含具有相同名称和扩展名的多个文件)。
还有一些我自己的笔记。
请注意,这只是示例。在现实生活中,大约有 100-200 张图像。
在我看来,似乎至少有两种方法可以解决此问题:向文件名添加时间戳或添加随机文本。我认为随机文本会更好,因为时间戳有时可能相等(如果处理速度非常快)。
那么,您对这项任务有何建议,以及如何完成?谢谢。
最佳答案
您可以使用 convert
来代替 mogrify
,通过 -set filename:f
修改原始文件名,例如添加一个包含 a 的后缀柜台:
convert *.png -set filename:f "%t_%p" "%[filename:f].jpg"
其中%p
和%t
属性的含义是:
- %p当前图片列表中的图片索引
- %t 不带目录或扩展名(后缀)的文件名
更多详情 here .
如果这是您的起始场景:
aaa.jpg
aaa.png
bbb.jpg
bbb.png
最终情况是:
aaa.jpg
aaa.png
bbb.jpg
bbb.png
aaa_0.jpg
bbb_1.jpg
关于imagemagick - 转换名称相同但扩展名不同的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44284542/