【gpt搬运】bash脚本压缩png,jpg图片,当图片大小大于100kb的时候
可以编写一个 Bash 脚本,使用 find
命令查找图片文件并利用 imagemagick
或 jpegoptim
以及 pngquant
等工具来压缩图片。如果图片大小大于 100KB,就进行压缩。下面是一个示例脚本:
准备工具:
- 安装
imagemagick
:用于转换图片格式 - 安装
jpegoptim
:用于压缩.jpg
图片 - 安装
pngquant
:用于压缩.png
图片
安装命令(适用于 Debian/Ubuntu 系列 Linux):
sudo apt-get update
sudo apt-get install imagemagick jpegoptim pngquant
脚本内容:
#!/bin/bash
# 压缩JPG图片
compress_jpg() {
local file="$1"
echo "压缩JPG文件: $file"
jpegoptim --max=85 "$file" # 将质量降低到85%,根据需要调整
}
# 压缩PNG图片
compress_png() {
local file="$1"
echo "压缩PNG文件: $file"
pngquant --ext .png --force 128 "$file" # 将颜色数量减少到128
}
# 查找并压缩图片
find . \( -name "*.png" -o -name "*.jpg" -o -name "*.jpeg" \) -type f | while read file; do
filesize=$(stat -c%s "$file")
# 如果文件大于100KB
if [ $filesize -gt 102400 ]; then
if [[ $file == *.jpg || $file == *.jpeg ]]; then
compress_jpg "$file"
elif [[ $file == *.png ]]; then
compress_png "$file"
fi
else
echo "$file 小于100KB,无需压缩"
fi
done
echo "压缩完成!"
脚本说明:
- 使用
find
查找当前目录下所有的.jpg
、.jpeg
、.png
图片文件。 - 使用
stat -c%s
获取文件大小。 - 如果文件大于 100KB,则调用相应的压缩函数:
.jpg
和.jpeg
文件使用jpegoptim
进行压缩。.png
文件使用pngquant
进行压缩。
- 如果图片小于 100KB,脚本会跳过该文件。
使用方法:
将脚本保存为 compress_images.sh
,然后给予执行权限并运行:
chmod +x compress_images.sh
./compress_images.sh
本文来自博客园,作者:imzhi,转载请注明原文链接:https://www.cnblogs.com/imzhi/p/18459805
分类:
技术
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2019-10-12 laravel 5.5.39 升级到 5.5.45 出现 cookie 序列化异常问题的解决