Android の写真を年・月ごとのフォルダに整理する方法
Android スマホの DCIM/Camera には、数千枚の写真が 1 つのフォルダーに入っています。日付をなくさず、ギャラリーも崩さずに、スマホの上で年と月のフォルダに整理する方法を説明します。
Android スマホの写真を年と月のフォルダに整理するには、DCIM/Camera/2024/07 のようなフォルダーを作り、写真をそれぞれ撮った月のフォルダーへ移します。数枚ならファイルマネージャーアプリでできます。カメラのフォルダーをまるごと整理するなら、パソコンから adb を使います。adb はスマホの上でファイルを移すので、コピーもせず、日付も変えません。
ギャラリーには影響がある?
並び順には影響しません。ギャラリーは、写真がどこにあっても日付順に並べます。フォルダーが効いてくるのは、次の 3 つの場面です。
- アルバム。 ほとんどのギャラリーは、
DCIMとPicturesの中のフォルダーを 1 つずつアルバムとして表示します。年のフォルダーを作れば、年ごとのアルバムができます。 - パソコン。 パソコンからスマホを開くと、8,000 ファイルが入った 1 つのフォルダーは開くのが遅く、見るのも大変です。
- バックアップ。 Google フォトは、選んだフォルダーをバックアップします。
DCIM/Cameraの中のサブフォルダーも一緒にバックアップされます。
安全に整理できる場所
DCIM か Pictures の中で整理します。Android/data と Download は避けてください。ギャラリーによっては見てくれません。
写真を DCIM/Camera から別のフォルダーへ出すと、そのフォルダーのバックアップもオンにしない限り、Google フォトがバックアップしなくなることがあります。DCIM/Camera の中のサブフォルダーなら、カメラのバックアップがそのまま続きます。
ファイルマネージャーアプリで
1 か月分の写真を選び、「移動」を選んで、フォルダーを作り、確定します。1、2 か月分なら十分です。何年分もの写真なら、パソコンを使いましょう。
パソコンから adb で
USB デバッグをオン にして、次を実行します。
adb shell mkdir -p /sdcard/DCIM/Camera/2024/07
adb shell mv -n /sdcard/DCIM/Camera/IMG_202407*.jpg /sdcard/DCIM/Camera/2024/07/
2 行目は、カメラが付けたファイル名の中の日付を使います。IMG_YYYYMMDD_... という名前の写真ならこれで足ります。Pixel の PXL_... や保存した画像のように名前の形が違う写真は、写真の中の撮影日時を読む必要があります。ライブラリ全体なら、パソコンのスクリプトで写真ごとに 1 行の mv を書き、スマホでまとめて実行します。
スマホの中での mv はファイルの日付を保つので、ギャラリーの並びは何も変わりません。終わったら次を実行します。
adb shell content call --uri content://media/ --method scan_volume --arg external_primary
どの分け方にする?
- 年 / 月(
2024/07):いちばんよく使われます。数字なので、どの言語でも同じ順に並びます。 - 年 / 場所(
2024/Lisbon):旅行の写真に向いています。GPS のない写真は年のフォルダーに残ります。 - 年-月(
2024-07):1 階層だけで、スクロールしやすい形です。
分け方の選び方は 写真を年・月ごとのフォルダに整理する方法 で詳しく説明しています。
アプリでまとめて整理する
「Takeout JSON Metadata Fixer」の「Android スマホ」タブ(Windows 版のみ)には、「スマホ上でフォルダ整理」タブがあります。スマホのフォルダーと分け方(「年/月」「年/場所」「国/都市」など)を選ぶと、アプリがスマホからすべての写真の日付と場所を読み、それぞれがどこへ移るかを見せてから、スマホの上で移動します。
上書きは一切せず、ついでに間違ったファイルの日付を撮影日時に合わせ、空になったフォルダーを消します。「元に戻す」ですべてを元の場所に戻せます。
よくある質問
移動したあと、Google フォトはもう一度アップロードしますか?
しません。Google フォトは、すでにバックアップした写真を、新しいフォルダーにあっても見分けます。
SD カードの写真も整理できますか?
できます。カードは /sdcard/ ではなく /storage/<カードの ID>/ にあります。adb shell ls /storage で ID を確かめられます。
動画はどうなりますか?
同じように移動できます。動画の日付は、動画の中の情報か、名前とファイルの日付から取ります。