指定したディレクトリ内の画像を一括リサイズ・圧縮するbashスクリプトをご紹介します。
convertコマンドをインストールする
画像のリサイズ・圧縮にはImageMagicのconvertコマンドを使います。aptやyumであらかじめインストールしておきましょう。
$sudo apt-get install imagemagick
指定したディレクトリ内の画像をリサイズ・圧縮する
さっそくスクリプトをご紹介します。
指定したディレクトリ内の画像を長辺1920px、品質50のJPEGファイルにリサイズし、保存します。
#!/bin/bash
# 入力ディレクトリと出力ディレクトリのパス
input_dir="/path/to/input_directory"
output_dir="/path/to/output_directory"
# 入力ディレクトリ内のすべてのJPEG画像を処理
for image_file in "$input_dir"/*.jpeg; do
# 出力ファイルのパスを作成
output_file="$output_dir/$(basename "$image_file")"
# 画像をリサイズしてJPEG品質を50に圧縮し、EXIF情報を保持して出力ファイルに保存
convert "$image_file" -resize 1920x -quality 50 -preserve-exif "$output_file"
done
echo "画像のリサイズと圧縮が完了しました。"
ディレクトリ内
EXIFを除去しながら、画像をリサイズ・圧縮する
#!/bin/bash
# 入力ディレクトリと出力ディレクトリのパス
input_dir="/path/to/input_directory"
output_dir="/path/to/output_directory"
# 入力ディレクトリ内のすべてのJPEG画像を処理
for image_file in "$input_dir"/*.jpeg; do
# 出力ファイルのパスを作成
output_file="$output_dir/$(basename "$image_file")"
# 画像をリサイズしてJPEG品質を50に圧縮し、EXIF情報を保持して出力ファイルに保存
convert "$image_file" -resize 1920x -quality 50 "$output_file"
done
echo "画像のリサイズと圧縮が完了しました。"
-preserve-exif
オプションを削除すると、EXIF情報が削除されます。
コメント