shell 批量压缩指定目录及子目录内图片的方法
用户上传的图片,一般都没有经过压缩,造成空间浪费。因此需要编写一个程序,查找目录及子目录的图片文件(jpg,gif,png),将大于某值的图片进行压缩处理。
代码如下:
#!/bin/bash
#查找目录及子目录的图片文件(jpg,gif,png),将大于某值的图片进行压缩处理
#Config
folderPath='/home/fdipzone/photo'#图片目录路径
maxSize='1M'#图片尺寸允许值
maxWidth=1280#图片最大宽度
maxHeight=1280#图片最大高度
quality=85#图片质量
#压缩处理
#Param$folderPath图片目录
functioncompress(){
folderPath=$1
if[-d"$folderPath"];then
forfilein$(find"$folderPath"\(-name"*.jpg"-or-name"*.gif"-or-name"*.png"\)-typef-size+"$maxSize");do
echo$file
#调用imagemagickresize图片
$(convert-resize"$maxWidth"x"$maxHeight""$file"-quality"$quality"-colorspacesRGB"$file")
done
else
echo"$folderPathnotexists"
fi
}
#执行compress
compress"$folderPath"
exit0
以上这篇shell批量压缩指定目录及子目录内图片的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短