
#!/bin/bash
# 检查是否安装了 ImageMagick
if ! command -v convert &> /dev/null; then
echo "未检测到 ImageMagick,请确认是否要安装。"
read -p "是否安装 ImageMagick? (y/n): " choice
case "$choice" in
[Yy])
echo "正在安装 ImageMagick..."
sudo emerge -av media-gfx/imagemagick
;;
[Nn])
echo "取消安装。脚本将退出。"
exit 1
;;
*)
echo "无效的输入。脚本将退出。"
exit 1
;;
esac
fi
# 提示用户输入参数read -p "请输入目标目录路径: " target_dir
read -p "请输入目标像素大小(宽度x高度): " size
# 检查输入参数是否正确if [ ! -d "$target_dir" ]; then
echo "错误: 目标目录 $target_dir 不存在。"
exit 1
fi
# 使用 find 命令查找当前目录下的所有图片文件,并使用 mogrify 命令批量调整图片尺寸大小find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec mogrify -resize "$size" {} +
# 使用 find 命令查找当前目录下的所有图片文件,并使用 convert 命令批量压缩图片大小至 3MB 以内find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec convert {} -define jpeg:extent=3MB "$target_dir/{}" \;
echo "图片调整完成,结果保存在 $target_dir 目录下。"