Les dates système de vos fichiers photos ne correspondent pas aux dates EXIF ? Vous souhaitez modifier la date de création d’un fichier à partir de la date figurant dans le nom du fichier ? Deux outils sont là pour ça !

Copier la date EXIF vers la date système

Premièrement, il faut installer l’outil nommé jhead. Sur Mac :

$ brew install jhead

Pour Windows, le plus simple est de se référer à la documentation. Une fois l’outil installé, taper la commande suivante dans un terminal :

jhead -ft /mon_dossier/photos/*.jpg

Pour modifier l’ensemble des fichiers dont l’extension est .jpg dans le dossier /mon_dossier/photos.

Vous pouvez également voir toutes les opérations réalisables avec l’outil jhead en lançant la commande suivante :

man jhead

Copier la date dans le nom du fichier vers la date système

L’exemple de nom de fichier que nous allons utiliser est issu des fichiers générés par l’iPhone :

2018-01-14 22.32.24 903-IMG_7366.heic

Supposons que le dossier /photos soit remplit de fichiers jpg. Nous allons appliquer un script sur ce dossier qui va parcourir chaque nom de fichier, en extraire la date (2018-01-14, dans ce cas), puis modifier la date système de chaque fichier.

#!/bin/bash
for name in *.*
do
   date="$(echo "$name" | grep -o "[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}" | sed -e 's/-//g')"
   echo $name
   touch -a -m -t ${date}0900 "$name"
done

Il n’y a plus qu’a mettre ces quelques lignes dans un fichier nommé rename.sh (p.ex.), à copier ce fichier dans notre dossier /photos et à l’exécuter :

$ sh rename.sh

Voilà, vos fichiers sont à la bonne date !