Voici
un petit script qui permet de trier ses photos en fonction de la
date où la photo a été prise. Il utilise pour cela les
metadata EXIF contenues dans les photos pour les renommer par ordre de date.
En effet, l'ordre alphabétique des photos ne correspond pas toujours à l'ordre chronologique. Et la date des photos affichée par nautilus, ls -a ou autres est parfois la date de la sauvegarder sur le PC, cà d la même date pour toutes les photos.
Utilisation
Lancer le script
./datePhoto et laissez-le dans un premier temps analyser vos photos :
$ datePhotos
[4/6] détection de la date de 'soleil 5.jpg'...
Si elles ne sont pas triées par ordre, vous aurez alors la possibilité, si vous le souhaitez, de donner un nouveau nom à vos photos et enfin de les trier :
$ datePhotos
Les 6 photos ne sont pas triées par date.
Voulez-vous renommer les 6/6 photos par ordre [o/N] ? o
Nom des photos ['soleil' par défaut <enter>] :
[1/6] soleil 11.jpg ==> soleil 1.jpg
[2/6] soleil 2.jpg ==> soleil 2.jpg
[3/6] soleil 7.jpg ==> soleil 3.jpg
[4/6] soleil 4.jpg ==> soleil 4.jpg
[5/6] soleil 5.jpg ==> soleil 5.jpg
[6/6] soleil 6.jpg ==> soleil 6.jpg
Vous confirmez [O/n] ?
Un petit <enter> et c'est fait !!
Option : il est possible de ne trier que les photos portant un certain nom : "
datePhoto vacance" ne renommera que vos photos de vacance !
Extension : vérifier
(sans trier) si toutes vos photos sont bien triées dans chacun des sous-dossiers contenant des photos : utiliser
datePhotosDir ! Exemple :
$ cd ToutesMesPhotos
$ datePhotosDir
Dossier . :
Pas de photos.
Dossier ./2006 :
Les 2 photos ne sont pas triées par date.
Dossier ./2006/avril :
OK, les 6 photos sont bien triées par date.
Remarque datePhoto nécessite ImageMagick, installé par défaut sur Fedora par exemple.

Télécharger le script :
datePhotos,
Télécharger le script :
datePhotosDir.
Autres manières de renommer vos fichiers :
- changer le nom de fichiers (pas uniquement des photos) avec renomme
8/12/2006 (anciennement 'renamePhotos')
- la commande "
rename stringA stringB fichiers" change "stringA" par "stringB" dans le nom des "fichiers"