最近需要批量将一批图片旋转90度,一开始想用脚本实现,但是无意中想起好像有一个命令行图片工具imagemagick,一番google,发现能很方便的实现我的需求,就不重复造轮子啦。

安装

sudo apt-get install imagemagick

图片编辑

旋转

顺时针旋转90度

convert a.jpg -rotate 90 b.jpg

批量顺时针旋转90度一批图片,并保存为原文件名

mogrify  -rotate 90 *.jpg

注意:

所有涉及批量编辑图片操作的,将convert改成mogrify就可以了。

图片信息处理

获取图片基本信息

identify -verbose image.jpg

获取EXIF信息

identify -format '%[EXIF:*]' image.jpg

打印所有图片EXIF旋转信息

identify -format '%[basename].%e EXIF:Orientation:%[EXIF:Orientation]\n' *.jpg

输出

IMG_3767.jpg EXIF:Orientation:
IMG_3768.jpg EXIF:Orientation:
safebeat11-0002.jpg EXIF:Orientation:6
safebeat11-0003.jpg EXIF:Orientation:6
safebeat11-0004.jpg EXIF:Orientation:6
safebeat11-0005.jpg EXIF:Orientation:6

过滤出所有含有EXIF旋转的图片

identify -format '%[basename].%e EXIF:Orientation:%[EXIF:Orientation] \n' *.jpg | grep -v  'EXIF:Orientation: '

输出

safebeat11-0002.jpg EXIF:Orientation:6
safebeat11-0003.jpg EXIF:Orientation:6
...

移除配置信息

移除exif等配置信息

convert -strip src.jpg dst.jpg

批量移除exif

mogrify -strip *.jpg

还有很多功能,未来慢慢补充