linux shell批量压缩某个目录下图片大小

linux shell批量压缩某个目录下图片大小

#!/bin/sh
read -p "Input Path:" SPATH
maxsize=$((1024*200))
FILELIST () {
        filelist=`ls $SPATH`
        for filename in $filelist; do
                fname=$(basename "$filename")
                ex="${fname##*.}"
                if [ -f $filename ] && [ $ex = 'jpg' -o $ex = 'jpeg' -o $ex = 'png' -o $ex = 'JPG' -o $ex = 'JPEG' -o $ex = 'PNG' ] ;then
                        #echo $filename
                        COMPRESS $filename
                elif [ -d $filename ];then
                        cd $filename
                        SPATH=`pwd`
                        FILELIST
                        cd ..
                fi

        done
}
COMPRESS () {
        imgpath=$1
        filesize=`ls -l $imgpath | awk '{ print $5 }'`
        if [ $filesize -ge $maxsize ]; then
                #convert -quality 85% $imgpath $imgpath
                echo $imgpath
        fi
}
cd $SPATH
FILELIST
echo "Done."




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值