例如,我有两个文件:
aaa.jpg (with cat)
aaa.png (with dog)
正如您所看到的,尽管名称相同,但图像却不同。
我想将这两种图像转换为单一格式。
此任务的基本尝试是
mogrify -format jpg *.png
但由于显而易见的原因(一个文件夹不能包含多个具有相同名称和扩展名的文件),它无法正常工作。
另外,我自己也有一些笔记。
请注意,这只是一个例子。在现实生活中,它将是大约100-200张图像。
从我的角度来看,似乎至少存在两种解决此问题的方法:为文件名添加时间戳<或> 添加随机文本。我认为随机文本会更好,因为时间戳有时可能相等(如果处理速度非常快)。
那么,你对这项任务有什么建议,以及如何做到这一点?感谢。
答案 0 :(得分:3)
在类似的情况下,我添加文字(不是随机的),所以文件将是aaa_png.png和aaa_jpg.jpg,因此在转换后你有aaa_png.jpg和aaa_jpg.jpg这应该可以帮助你跟踪事情并且对你遇到的问题免疫。
正如@jsv指出的那样,你可以一步完成:
convert *.png -set filename:f "%t_%e" "%[filename:f].jpg
如果你这样做的话,原来的&#34; aaa.png&#34;和&#34; aaa.jpg&#34;将继续存在,以及新的&#34; aaa_png.jpg&#34;文件。
答案 1 :(得分:2)
您可以使用mogrify
使用convert
修改原始文件名,而不是-set filename:f
,例如添加包含计数器的后缀:
convert *.png -set filename:f "%t_%p" "%[filename:f].jpg"
%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