我想将一批近 100 张图像从 jpg 格式转换为 png 格式。如何才能做到这一点而不重命名它们,而是实际转换格式?
答案1
尝试这些命令,
mogrify -format png /path/*.jpg
这会将所有 .jpg 文件转换为 .png 文件,并将转换后的文件保存在同一目录中。
mv /path/*.png ~/Desktop/pic
这会将所有.png
文件(已转换)移动到pic
桌面上的目录。
免责声明:
如果你想保持图像的方向,你必须添加-auto-orient
到命令中。你可以找出原因这里保持方向的 mogrify 命令如下所示:
mogrify -auto-orient -format png /path/*.jpg
答案2
使用 ImageMagick。
首先安装 imagemagick:
sudo apt-get install imagemagick
首先尝试只转换一张图片:
convert image.jpg image.png
现在转换全部:
mogrify -format png *.jpg
编辑
您还需要将其拆分成适合的块,以避免达到命令行中可以输入的内容的限制。这应该会更好:
find -name '*.jpg' -print0 | xargs -0 -r mogrify -format png
和用于处理文件名中的空格, 表示-print0
如果没有事可做则不运行 mogrify。-0
-r
来源:https://stackoverflow.com/questions/1010261/running-a-batch-with-imagemagick
编辑2 根据@Glutanimate 的评论切换 png 和 jpg。
编辑3 在最后建议中将 png 更改为 jpg。
答案3
首先,转换有效。您无需测试它。其次,bash oneliner 满足需求:
$ for file in Ground*jpg; do { \
echo "Converting $file to `echo $file|cut -d. -f1`.png" ;\
convert $file `echo $file|cut -d. -f1`.png ; } done
摇滚吧老家伙 ;)
干杯
答案4
我知道这个问题提出来已经很久了,但是有一款我经常使用却未被提及的出色软件。
http://photobatch.wikidot.com/ 也称为 Phatch。它实际上可以将图像中的任何东西转换为任何其他东西。它已经有一段时间没有更新了,但现在声称已发布用于 ubuntu 17.10。试试看。我相信你会对它非常满意。