Linux命令行下使用ImageMagick的convert工具批量转换图片格式

Linux命令行下使用ImageMagick的convert工具批量转换图片格式

 

举例:将menu目录下的所有png文件变更为jpg文件。

安装

使用yum即可安装。

yum install ImageMagick 
变更前
[root@web menu]# tree
.
├── sm1b561jbbgh.png
├── sm1p4x55am8x.png
├── sm1txq3jzqpd.png
├── sm1xov7dy5ou.png
├── sm1y6af5i685.png
├── smfo7aqhsk3t.png
├── smt9oezo59m2.png
└── smvymyr3wnlj.png

0 directories, 8 files

 

转换格式
for file in *.png
    do convert $file ${file%%.*}.jpg
done

也可以直接写到一行

for file in *.png; do convert $file ${file%%.*}.jpg; done
转换完成
[root@web menu]# tree
.
├── sm1b561jbbgh.jpg
├── sm1b561jbbgh.png
├── sm1p4x55am8x.jpg
├── sm1p4x55am8x.png
├── sm1txq3jzqpd.jpg
├── sm1txq3jzqpd.png
├── sm1xov7dy5ou.jpg
├── sm1xov7dy5ou.png
├── sm1y6af5i685.jpg
├── sm1y6af5i685.png
├── smfo7aqhsk3t.jpg
├── smfo7aqhsk3t.png
├── smt9oezo59m2.jpg
├── smt9oezo59m2.png
├── smvymyr3wnlj.jpg
└── smvymyr3wnlj.png

0 directories, 16 files

 

验证文件格式
[root@web menu]# file sm1b561jbbgh.*
sm1b561jbbgh.jpg: JPEG image data, JFIF standard 1.01
sm1b561jbbgh.png: PNG image data, 67 x 57, 8-bit/color RGB, non-interlaced

这个命令也行:

它是转换大小

for file in *.jpg;do convert $file -resize 1920×1080 $file; done

for file in $(find . -name "*.JPG");do sudo convert $file -resize 200×80! $file; done

 

发表评论