bulk_correct.sh
#!/bin/bash # 入力ディレクトリと出力ディレクトリ INPUT_DIR="$1" OUTPUT_DIR="$2" # ImageMagick の convert が使えるか確認 if ! command -v convert &> /dev/null; then echo "ImageMagick (convert) がインストールされていません。" >&2 exit 1 fi # 出力先ディレクトリ作成 mkdir -p "$OUTPUT_DIR" # 画像拡張子のリスト EXTENSIONS=("jpg" "jpeg" "png" "JPG" "JPEG" "PNG") # 再帰的に処理 for EXT in "${EXTENSIONS[@]}"; do find "$INPUT_DIR" -type f -iname "*.${EXT}" | while read -r FILE; do # 出力ファイル名 REL_PATH="${FILE#$INPUT_DIR/}" # 相対パス DEST_PATH="${OUTPUT_DIR}/${REL_PATH}" DEST_DIR=$(dirname "$DEST_PATH") mkdir -p "$DEST_DIR" echo "Processing: $REL_PATH" convert "$FILE" \ -auto-gamma \ -auto-level \ -modulate 100,115 \ "$DEST_PATH" done done echo "完了しました。出力先: $OUTPUT_DIR"