压缩博客图片尺寸的 Bash 脚本(Linux)
原因
之前一直没管博客图片的大小因为感觉其实不太重要,毕竟是 Github 的免费空间,没有那么大的动力优化图片。
但是最近发现有的博客确实图片太多了,所以加载起来很慢,所以才开始了优化。
现在把最后的成品写成这个博客。
原理
原理非常简单,列出当前文件夹全部的图片文件(JPG,PNG),然后处理所有的大于 1M 的图片。
然后循环运行脚本,知道不在出现大于 1M 的图片即可。
脚本
#! /bin/bash
#获取脚本所在文件目录
#大于1M图片缩小一半
for file in `find ./ -name "*.[jJ][pP][gG]"`;
do
if [ `stat --printf="%s" $file` -gt 1000000 ]
then
echo $file
mogrify -resize 50% $file
fi
done
for file in `find ./ -name "*.[pP][nN][gG]"`;
do
if [ `stat --printf="%s" $file` -gt 1000000 ]
then
echo $file
mogrify -resize 50% $file
fi
done
echo "Done"
效果
最后配图文件夹减少了 2/3 的体积还是很不错的。
Written on May 13, 2017