J'importe souvent des photos et des vidéos (ayant pour la plupart des extensions JPG et MOV) depuis des appareils photo numériques et des tablettes vers mon PC, et j'aimerais idéalement les voir triées en fonction des dates et heures auxquelles elles ont été prises déjà présentes dans leurs données EXIF. Et d'où mon souhait de les renommer tous de préférence à l'aide d'un simple Nautilus Script en insérant de préférence les horodatages avant chaque nom de fichier.
Jusqu'à présent, je n'ai réussi qu'à rassembler le script Nautilus suivant, qui, je pense, est loin d'être parfait:
for i in *.*
do
mv -i "$i" "$(exiftool -CreateDate "$i" | awk -F ': ' '{print $2}')_"$i""
done
Ce que je n'aime pas dans cette méthode de changement de nom, ce sont les deux points utilisés dans les horodatages EXIF (par exemple, "2013: 09: 03 20: 55: 09_IMG_0108.JPG"), ce qui pourrait créer des problèmes lors du transfert de ces fichiers plus tard vers d'autres environnements ( par exemple Windows).
Cette commande (en utilisant exiv2 au lieu d' exiftool ) permet de manipuler facilement les horodatages mais son inconvénient est qu'elle ne fonctionne pas sur les fichiers vidéo (par exemple MOV) :
exiv2 -k -r '%Y-%m-%d_%H-%M-%S_:basename:' rename "$i"
J'espère donc que quelqu'un pourra trouver une meilleure solution. Et ce serait magique s'il réussissait même à convertir les noms de fichiers et extensions d'origine en minuscules!