par francois » 05 Jan 2013 23:43
J'ai un doute sur ce que tu recherches donc je vais commencer par résumer.
Tu veux changer les dates de tes fichiers images pour que lorsque tu fais un "ls -l" tu puisses avoir les mêmes dates que celles qui sont dans le EXIF mais sans renommer tes fichers, est ce bien cela ?
Ton script fait cela :
- find -name '*.jpg' : obtenir une liste des fichiers (et sous répertoires inclus) finissant par ".jpg"
- while read PIC ; do : lire la liste des fichiers précédemment générées pour effectuer les commandes ci-dessous
- DATE=$(exiftool -p '$DateTimeOriginal' $PIC |sed 's/[: ]//g') : obtenir la date EXIF de l'image en cours de traitement pour la stocker dans la variable DATE
- touch -t $(echo $DATE | sed 's/\(..$\)/\.\1/') $PIC : changer les dates de dernier accès et de dernière modification par celle fourni par la variable DATE
- mv -i $PIC $(dirname $PIC)/$DATE.jpg : renommer l'image en cours par la variable DATE et l'extension .jpg (si la cible existe déjà demander pour l'écraser)
Donc si tu veux juste changer la date de modification alors tu peux retirer la partie "mv -i $PIC $(dirname $PIC)/$DATE.jpg"