Macで簡単に画像ファイルを一括コンバート・EXIF情報を削除する方法

Macでターミナルを使用して任意のフォルダの画像ファイルをまとめて任意のフォーマットにコンバート(変換)・リサイズしたり、EXIFメタデータを削除する方法を紹介。

本記事の方法はコンバート・リサイズだけであればサードパーティアプリも一切不要な上、GIFやPSDといったフォーマットへのコンバートも可能だ。

なお、本記事の手順を行う前に下記記事を参考にターミナルにフルディスクアクセス権を与えておこう。

macOSターミナルでNot Permitted(アクセス権)エラーが出た場合の対処法

ターミナル内でのフォルダへの移動の仕方(Change Directory)

事前情報としてターミナル内で任意のフォルダに移動するにはまず「cd」と入力し、その後ろにスペースを入れて入力(まだエンターキーは押さない)。

続いてコンバートしたい画像ファイルが存在するフォルダをターミナル画面にドラッグアンドドロップしよう。

上記画像のようにフォルダへのパスが入力されたらエンターキーを押して移動しよう。

画像ファイルの一括コンバート・リサイズ・EXIF情報の削除を行う手順

フォルダ内の画像ファイルを一括コンバート

ターミナル内で画像フォルダに移動したら下記コマンドを入力。

for f in *.HEIC
do sips -s format png "${f}" --out "${f%.*}.png"
done

ここでは「HEIC」という部分で元のファイルフォーマット、「png」という部分でコンバート後のファイルフォーマットを指定しているが下記のフォーマットもサポートされているため、コマンドのフォーマットの部分を任意のフォーマットに置き換えて実行しよう。

コンバート可能なフォーマット
.jpeg. tiff .png .gif .jp2 .pict .bmp .qtif .psd .sgi .tga

例えば「フォルダ内のpngファイルを全てjpegにコンバート」という場合は下記のようなコマンドになる。

for f in *.png
do sips -s format jpeg "${f}" --out "${f%.*}.jpeg"
done

なお、HEICからPNGなどへのコンバートは可能だが他のフォーマットからHEICへのコンバートはできない。

コマンドを入力したらエンターキーを押して実行しよう。

コマンドを実行すると上記画像のように処理結果が表示されるので当該フォルダを開いてみよう。

上記画像のように無事に当該ファイルが希望のフォーマットにコンバートされていたら成功だ。

なお、オリジナルのファイルは上書きされない。

フォルダ内の画像ファイルを一括コンバート・リサイズ

画像ファイルをリサイズした上でコンバートしたい場合、下記コマンドのように「-Z 1024」などのようにWidth(幅)を指定して実行すると幅を基準にアスペクト比を維持してまとめてリサイズ・コンバートが可能だ。

for f in *.HEIC
do sips -s format png "${f}" -Z 1024 --out "${f%.*}.png"
done

コマンドの「1024」の部分には希望の幅をピクセルで指定しよう。

もちろんここでもファイルフォーマットを任意の形式に変更しても構わない。

コマンド実行後、上記画像のようにリサイズしてコンバートされたら成功だ。

なお、もしアスペクト比を無視して自分で幅と高さを指定してリサイズしたいのであれば下記のようなコマンドになる。

for f in *.HEIC
do sips -s format png "${f}" -z 500 1024 --out "${f%.*}.png"
done

幅と高さを指定した場合は上記コマンドの場合500が高さ、1024が幅となる。

フォルダ内の画像ファイルのEXIFメタデータを一括削除

フォルダ内の画像ファイルのEXIFメタデータをターミナルコマンドでまとめて削除したい場合は「ExifTool」が役に立つ。

公式サイトに飛んだら上記リンクをクリックしてダウンロード。

ダウンロードしたらパッケージファイルを右クリックして「開く」をクリック。

パッケージファイルはコード署名がされていないため(安全であることを確認済み)、上記警告が出るがそのまま「開く」をクリック。

続いて画面の指示に従ってインストールを進めよう。

ExifToolをインストールしたらターミナルを開いて「cd」コマンドでEXIFメタデータを削除したい画像があるフォルダに移動し、下記コマンドを実行。

exiftool -all= *.HEIC

上記コマンドでは「HEIC」とファイルフォーマットを指定しているが、もちろんjpegファイルなら「jpeg」などと置き換えて実行しても構わない。

コマンド実行後、当該ファイルを見ればEXIFメタデータが削除されているはずだ。

上記画像のようにEXIFメタデータがまとめて削除されていたら完了だ。

なお、EXIFメタデータをまとめて削除した際に末尾に「_original」と表示されたファイルが作成されるが「_original」という文字列を削除して復元するか不要ならファイル自体を削除しよう。

また、ファイルフォーマットを指定せずにフォルダ内の全ての画像のEXIFメタデータを削除したい場合は下記コマンドを実行しよう。

exiftool -all= *

このコマンドも末尾に「_original」と表示されたファイルが作成される。

まとめ

参考までに本記事でコンバートやリサイズを行う際に使用した「sips(Scriptable Image Processing System)」コマンドのマニュアルは下記にて(ターミナル上でman sipsと実行しても可)。

参考 sips(1) osx man pageunix.com

Macにおける画像のコンバートやEXIF情報の削除の方法は色々あるが、本記事の方法はターミナルの操作に慣れる必要はあるものの大仰なアプリを使用せずにフォルダ内の画像ファイルを様々なフォーマットへ一括コンバート・EXIF情報の削除が可能なため意外と便利だ。

特にコンバートだけであればサードパーティアプリは一切不要のため、特定フォルダ内の画像ファイルをサッとコンバートしたい場合は重宝すると思う。