KeeFeeRe KeeFeeRe

DevOps Engineer | CI/CD | Kubernetes | Cloud Infrastructure | Automation | Observability ๐Ÿš€

GitHub LinkedIn Django Facebook Instagram Gmail

Photo Renamer

Just made Photo Renamer script

photo_renamer.sh is a cross-platform shell script for organizing messy photo/video archives into a clean, chronological folder structure based on metadata (EXIF and fallback timestamps). Designed to handle multi-device backups with duplicates, inconsistent naming, and unsorted content.

๐Ÿ‘‰ You can find the full script and instructions on GitHub: photo_renamer.sh

โœจ Features

๐Ÿ“ฆ Output structure

/_Renamed/
โ””โ”€โ”€ 2023/
โ””โ”€โ”€ 07/
โ”œโ”€โ”€ IMG_20230701-143000.jpg
โ”œโ”€โ”€ VID_20230701-150000.mp4
โ””โ”€โ”€ โ€ฆ

๐Ÿงช Example before and after

Before:

๐Ÿ“ someone_phone/backup_07/DCIM/
  โ”œโ”€โ”€ IMG_20210809_100101.jpg
  โ”œโ”€โ”€ 20200902_090143(0).jpg
  โ”œโ”€โ”€ VID_20220326_113304.mp4
  โ””โ”€โ”€ IMG-20210902-WA0010.jpg

After:

๐Ÿ“ _Renamed/
  โ”œโ”€โ”€ 2020/09/IMG_20200902-090143.jpg
  โ”œโ”€โ”€ 2021/08/IMG_20210809-100101.jpg
  โ”œโ”€โ”€ 2021/09/IMG_20210902-000000.jpg
  โ””โ”€โ”€ 2022/03/VID_20220326-093327.mp4

๐Ÿ”ง Usage

sh photo_renamer.sh

โš™๏ธ Configuration

Edit constants at the top of the script:

ADD_PREFIX=0       # 1 to enable IMG_/VID_ prefix, 0 to disable
TARGET_ROOT="./_Renamed"

๐Ÿ“Œ Why this script?

This tool was born out of frustration with 15+ years of backups from multiples phones, cloud dumps, messily named folders and files like IMG_20210809_100101.jpg or [17.04.2008] - 010.mp4. It aims to: