shell脚本实现自动化压缩图片

1,541 阅读1分钟

发现一个很好用的图片压缩网站(tinypng.com/),支持开发者调用图片压缩服务,研究了一下,写了一个自动压缩图片的脚本,代码如下:

# https://tinypng.com/  单个api压缩数量有限制,可以自己申请账号

# api
api=QFDtYRbPnL6fLSDgtlw01ynQgB5wVss8
# 待压缩path
dir=src/images

path=$(pwd)

for file in `find $dir|egrep '\.(jpg|png|PNG|JPG|jpeg|JPEG)'`
do
    echo 上传:$file 
    output=$(curl https://api.tinify.com/shrink --user api:$api --data-binary @$file --dump-header /dev/stdout | sed 's/"//g')
    url=$(echo $output | sed 's/.*url:\(.*\)}}.*/\1/g')
    echo 下载: $url $file
    curl $url \
        --user api:$api \
        --output $file
done
echo 结束

申请账号获取code即可使用,效果不错,不过压缩速度一般。