Centos中使用ImageMagick对图片进行批量压缩
安装ImageMagick
yum -y install ImageMagick
批量压缩脚本
#!/bin/bash
# 设置原始图片目录和压缩后图片目录
input_dir="/data/images"
output_dir="/data/images_output"
# 遍历原始图片目录中的所有图片文件
for file in "$input_dir"/*
do
# 检查文件是否为普通文件(非目录)
if [[ -f "$file" ]]; then
# 获取文件名和扩展名
filename=$(basename "$file")
extension="${filename##*.}"
# 统一后缀为小写
lowerextension=$(echo "$extension" | tr '[:upper:]' '[:lower:]')
# 获取文件大小
file_size=$(stat -c "%s" ${file})
if [ $file_size -gt 153600 ]; then
if [ "$lowerextension" = "jpg" ]; then
echo "start compressing image:${filename}"
# 压缩生成到原文件
#convert "$file" -define jpeg:extent=120KB "$file"
# 把内容写入到压缩后图片目录文件中
convert "$file" -define jpeg:extent=120KB "$output_dir/${filename%.*}.$extension"
elif [ "$lowerextension" = "png" ]; then
echo "start compressing image:${filename}"
# 压缩图片
convert "$file" -define jpeg:extent=120KB ~/output.jpg
# 把内容写入到原文件
#cat ~/output.jpg >"$file"
# 把内容写入到压缩后图片目录文件中
cat ~/output.jpg > "$output_dir/${filename%.*}.$extension"
else
echo 'Non-image files, skip!!!'
fi
fi
fi
done
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了