当前位置:首页 > Linux

Linux 图片批量压缩工具 ImageMagick

canca6年前 (2021-04-07)Linux1321

最近做了一个游戏展示的界面,80多个游戏和它们的url,图标,上传服务器以后发现图标都较大,在客户端可以使用很多在线免费的压缩工具(美图秀秀),但是服务器一条命令就可以解决的问题,没必要去手动添加图片。

  • 下载ImageMagick

系统:CentOS

cmd:yum install ImageMagick -y
  • 使用

  通过正则查找当前目录下所有大于 50k 的图片,进行等比例50%的缩放;

find ./ -regex '.*\(jpg\|JPG\|png\|PNG\|jpeg\)' -size +50k -exec convert -resize 50%x50% {} {} \;


  通过正则查找当前目录下所有大于 50k 的图片,进行像素大小控制,convert 是会自动按照最大尺寸等比例进行缩小的;

find ./ -regex '.*\(jpg\|JPG\|png\|PNG\|jpeg\)' -size +50k -exec convert -resize 100x100 {} {} \;


  如果想降低图片的质量,可以用 convert 的 -quality 参数,质量值为 0-100 之间的数值,数字越大,质量越好,一般指定 70-80 ,基本上看不出前后的差别 

convert -resize 500x500 -quality 75 xxx.jpg xxx.png


通过 crontab 进行定时图片压缩

举例:对 /www/images/ 文件夹下的所有图片每 5 分钟进行一次图片压缩处理;

在 /www/images/ 下新建 convert.sh 脚本,内容:

find /www/images/ -regex '.*\(jpg\|JPG\|png\|PNG\|jpeg\)' -size +50k -exec convert -resize 50%x50% {} {} \;

通过 crontab -e 在文件后添加:

*/5 * * * * /www/images/convert.sh


扫描二维码推送至手机访问。

版权声明:本文由Ant.Master's Blog发布,如需转载请注明出处。

本文链接:https://iant.work/post/762.html

标签: ImageMagick
分享给朋友:

“Linux 图片批量压缩工具 ImageMagick” 的相关文章

在Linux下安装和使用MySQL

一、引言 想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的 MySQL。本以为有Windows下使用SQL Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用…

Linux常用命令集锦

查看所有已安装前缀为samba的RPM包      rpm -qa samba*删除目录或文件   rm -r 文件名linux解压bz2文件使用   bunzip2   linux-2-4-2.tar.bz2 &nbs…

Linux 安装Apache

本以为Apache的编译安装很简单,其实不然;  以前的环境下编译报错很少 ,但这次不行了  提示configure: error: APR not found. Please read the documentation.  经网上查阅资料才知道这是Apac…

linux下U盘无法卸载的问题

实用U盘过程中MOUNT之后,操作完毕,想UMOUNT,然后拔U盘,可是,总是无法UMOUNT,老是显示DEVICE IS BUSY,确认没有窗口对U盘挂载点进行操作或游览了。有两种方法:一、1.#fuser -m /mnt/usb(你挂载的U盘)查找该程序的进程,然后kill掉...…

linux删除乱码文件

一些乱码文件不可以通过普通的rm命令进行管理。可以通过删除i节点的方式删除。[root@192_168_100_35 musicwap]# ls??,?K?k??a*.?J]?k?Φ??P???Z?b?A?R???X??u??.?????*H@B?T???xS*查看乱码文件的i结点[root@192…

centos 7 crontab定时器及开机自启

crontab 建议直接采用centos7 自带得cronteb包,定时器:就是定时去执行干某一件事在这里我以脚本为媒介1 当然是创建一个脚本,创建目录随意但是你一定要记得。。直接通过vi来创建一个test.sh脚本!…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。