写真のファイル名を撮影した日時にする方法【Mac】

写真、撮りますよね。
撮った写真は、iPhotoとかでMacに取り込みます。
その後は、画像ファイルとして、コピーしたり、
開いたり、メールに添付して送ってみたりします。

そのときに不満なのが、
だいたいの場合、変なファイル名になっていること
です。

DSC012345.jpg
とか言われても、いつ撮った写真か全然わからない。

写真がいっぱいある場合、
一個ずつ「情報を見る」とかやってられないし、
ファイル名を見ただけで、
いつ撮った写真かパッとわかりたい

ということなんですよ。

で、調べてやってみた結果をまとめておきます。

ファイルの作成日時=撮影日時の場合:Automatorを使う

Mac標準アプリ「Automator」でファイル名を一括リネームする方法と作成したアクションを削除する方法

「ファイルの作成日時」=「撮影日時」の場合は、
「ファイルの作成日時」を「ファイル名」にすればいいです。

その場合は、上の方法を使えます。
結構カンタン。

しかし、
「ファイルの作成日時」≠「撮影日時」の場合は、
残念ながらこの方法は使えず、
exifの情報から撮影日時を取得する必要があります。

それが、以下の方法で、ちょっとめんどくさい。
(私のケースは、残念ながらこっちだった。)

ファイルの作成日時≠撮影日時の場合:exiv2を使う

こちらを参考に作業をします。
→ 写真取り込み&EXIF情報にあわせてファイル名を変更 - 短期記憶容量少ナキ我ガ爲ノ備忘録也

流れは以下の通り。

⒈ Xcodeを「App Store」アプリでインストールする

AppleのDeveloperサイトに行き、Member Centerからログインする
(アカウントがない場合は作る)

⒊ ログインできたらDownloadsを開き、
「Command Line Tools(OS X Mavericks) for Xcode - March 2014」
をダウンロード、インストール
(OSがMavericksでない場合は、使っているOSの名前のファイルをダウンロードする)

⒋ MacPortsでexiv2をインストールする

sudo port install exiv2

brewがいい人は

brew install exiv2

でもOK。
参考:OS X El Capitan で Homebrew を使う方法 (2016年3月更新) - 意識低い開発者のBlog

⒌ Automatorに以下のシェルスクリプトを入れてフローを作る

# exiv2 は MacPorts で入れてるので path を追加(brewなら不要)
export PATH=${PATH}:/opt/local/bin

# exiv2 が見つからなければ終了
if ! which exiv2 2>&1 > /dev/null ; then
    exit 1
fi

for f in "$@"; do
    # EXIF にキー Exif.Photo.DateTimeOriginal が含まれている場合のみ
    if exiv2 -Pk "${f}" | grep -q Exif.Photo.DateTimeOriginal ; then
           DIR=$(dirname "${f}")
           ORIG_FILE=$(basename "${f}")
           # 既に日付がファイル名に含まれている場合はいったん削除
           NEW_FILE=$(echo "${ORIG_FILE}" )
           # if [ "${ORIG_FILE}" != "${NEW_FILE}" ] ; then
           #        if [ -f "${DIR}/${NEW_FILE}" ]; then
           #                mv -f "${DIR}/${NEW_FILE}" "${DIR}/backup_${NEW_FILE}"
           #        fi
           #        mv -f "${DIR}/${ORIG_FILE}" "${DIR}/${NEW_FILE}"
           #        fi
           # EXIF データに基づいてファイル名を変更
           exiv2 -r'%Y%m%d_%H%M%S' rename "${DIR}/${NEW_FILE}"
    fi
done

add_date_time_to_photo_filename.png
↑こんな感じにする

「Finderで名前を変えたい画像ファイルを選択した状態」
上で作ったAutomatorのフローの実行ボタンを押せば、
パパッとファイル名が変わった!
これならファイル何百個だって余裕だ!


ということで、無事できました。
来月には忘れている自信があるので、
将来の自分がほめてくれるのが楽しみです。

皆さんの拍手が私のモチベーションです。励ましのコメントも送れるよ!→

ガッツゴリラ

この最も大事な位置にガッツポーズをするゴリラが表示されていることに何の意味があるのだろうか?答え:何もありません。こんなところまでお読みいただきありがとうございました。

Macオンラインウエア情報検索

Loading
Macオンラインウエア情報検索についてはこちらを参照ください。 →「Macオンラインウエア情報検索」をアップデートしました2012

このブログ記事について

このページは、2014年5月31日 21:16に書かれたブログ記事です。

ひとつ前のブログ記事は「3万字書いても遅くならないiPadの文章書きアプリを調べてみた」です。

次のブログ記事は「イヤーワームが大量発生〜例年の倍以上のペース【嘘ニュース】」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

アーカイブ