10.13 High Sierra Photo & Messages

Si j'exporte l'original non modifié, la date de création est bonne même si j'apporte des modifications ensuite. Ce n'est pas le cas avec l'export classique...
Capture d’écran 2018-01-21 à 12.57.54.png

Avec la commande stat on peut récupérer cette date (c'est la dernière dans la liste). Ensuite, on peut l'utiliser pour mettre à jour les différentes date du fichier.
Bloc de code:
user@iMac:~/Desktop$ stat *

16777224 64764023 -rwxr-xr-x 1 user staff 0 10850711 "Jan 21 12:52:08 2018" "Jan 21 12:51:56 2018" "Jan 21 12:53:15 2018" "Sep 10 16:42:25 2016" 4096 21200 0x40 2016-09-10 16.42.25 - original.jpg
16777224 64764066 -rw-r--r-- 1 user staff 0 17323345 "Jan 21 12:53:26 2018" "Jan 21 12:51:56 2018" "Jan 21 12:53:17 2018" "Jan 21 12:50:08 2018" 4096 33840 0x40 2016-09-10 16.42.25.jpg
user@iMac:~/Desktop$ touch -t 201609101642.25 "2016-09-10 16.42.25.jpg"
user@iMac:~/Desktop$ stat *
16777224 64764023 -rwxr-xr-x 1 user staff 0 10850711 "Jan 21 12:55:09 2018" "Jan 21 12:51:56 2018" "Jan 21 12:53:15 2018" "Sep 10 16:42:25 2016" 4096 21200 0x40 2016-09-10 16.42.25 - original.jpg
16777224 64764066 -rw-r--r-- 1 user staff 0 17323345 "Sep 10 16:42:25 2016" "Sep 10 16:42:25 2016" "Jan 21 12:55:04 2018" "Sep 10 16:42:25 2016" 4096 33840 0x40 2016-09-10 16.42.25.jpg
user@iMac:~/Desktop$

J'aimerais donc que tu fasses un test pour me dire si cette date est bonne et si on peut bien l'utiliser.
Sinon, on peut aussi se baser sur le nom du fichier vu qu'apparement tu lui as mis la date.

J'ai juste besoin d'avoir plus d'info de ta part et je te prépare un petit script qui va te faire tout ça sur l'ensemble de tes photos.
 
Quand je fais " export 1 photo " la date de création est la date d'aujourd'hui.

Pareil si je fais export sans modif.

Mais je viens d'avoir une idée. Grace au logiciel NameChanger j'ai pu renommer le titre de la photo en date. ( avec tout les formats possibles )

Peut-on faire une commande terminal pour qu'il recopie cette date et la mette dans son exif ?
 
Voici le petit script qui va te faire ça (à appeler photo.sh par exemple)
Bloc de code:
#!/bin/bash

#Pour le rendre executable :
#chmod +x photo.sh

#Pour le lancer
#./photo.sh

repertoire_photo="/Users/Gregoryen/Desktop"

#Modification date
function modifier_date {
  date_fichier=$( basename "$1" | cut -c 1-17 | sed "s/\(....\)-\(..\)-\(..\) \(....\)\(..\)/\1\2\3\4.\5/" )
  touch -t $date_fichier "$1"
}
export -f modifier_date

find "${repertoire_photo}" -name "????-??-?? ??????.jpg" -exec bash -c 'modifier_date "{}"' \;

exit

Tu le mets où tu veux, il faudra faire cette commande pour le rendre executable :
Bloc de code:
chmod +x photo.sh

Le répertoire "repertoire_photo" est à modifier par le nom du vrai répertoire où tu as toutes tes photos. Ca ira chercher tout les fichiers "aaaa-mm-jj hhmmss.jpg" dans ce répertoire et les sous-répertoires associés pour les traiter.

Une fois le script prêt à être lancer, la commande pour le lancer est la suivante:
Bloc de code:
./photo.sh
 
Dernière édition par un modérateur:
Voici le petit script qui va te faire ça (à appeler photo.sh par exemple)

Tu le mets où tu veux, il faudra faire cette commande pour le rendre executable :
Bloc de code:
chmod +x photo.sh

Le répertoire "repertoire_photo" est à modifier par le nom du vrai répertoire où tu as toutes tes photos. Ca ira chercher tout les fichiers "aaaa-mm-jj hhmmss.jpg" dans ce répertoire et les sous-répertoires associés pour les traiter.

Une fois le script prêt à être lancer, la commande pour le lancer est la suivante:
Bloc de code:
./photo.sh

Bloc de code:
#!/bin/bash

#Pour le rendre executable :
#chmod +x photo.sh

#Pour le lancer
#./photo.sh

repertoire_photo="/Users/Gregoryen/Desktop"

#Modification date
function modifier_date {
  date_fichier=$( basename "$1" | cut -c 1-17 | sed "s/\(....\)-\(..\)-\(..\) \(....\)\(..\)/\1\2\3\4.\5/" )
  touch -t $date_fichier "$1"
}
export -f modifier_date

find "${repertoire_photo}" -name "????-??-?? ??????.jpg" -exec bash -c 'modifier_date "{}"' \;

exit

Merci beaucoup !

Alors la suis un peu perdu, je dois copier quoi dans ou ? utiliser automator, terminal ? car je sais pas par ou commencer ^^'
 
Après coup, je me suis dit que ce n'étais peut être pas bien expliqué pour toi ...
J'ai remis le script au début dans mon post précédent. Il s'agit de la partie commençant par "#!/bin/bash"
Il faut créer un fichier "photo.sh" contenant ce script par exemple sur ton bureau.

Ces autres commandes seront à faire via le terminal
Bloc de code:
cd "repertoire ou est le script"
chmod +x photo.sh
./photo.sh

Ou sinon, tu tapes les commandes suivantes directement dans le terminal (sans doute plus simple pour toi) :
Bloc de code:
repertoire_photo="/Users/Gregoryen/Desktop"
function modifier_date {
  date_fichier=$( basename "$1" | cut -c 1-17 | sed "s/\(....\)-\(..\)-\(..\) \(....\)\(..\)/\1\2\3\4.\5/" )
  touch -t $date_fichier "$1"
}
export -f modifier_date
find "${repertoire_photo}" -name "????-??-?? ??????.jpg" -exec bash -c 'modifier_date "{}"' \;
 
  • J’aime
Réactions: Gregoryen
Après coup, je me suis dit que ce n'étais peut être pas bien expliqué pour toi ...
J'ai remis le script au début dans mon post précédent. Il s'agit de la partie commençant par "#!/bin/bash"
Il faut créer un fichier "photo.sh" contenant ce script par exemple sur ton bureau.

Ces autres commandes seront à faire via le terminal
Bloc de code:
cd "repertoire ou est le script"
chmod +x photo.sh
./photo.sh

Ou sinon, tu tapes les commandes suivantes directement dans le terminal (sans doute plus simple pour toi) :
Bloc de code:
repertoire_photo="/Users/Gregoryen/Desktop"
function modifier_date {
  date_fichier=$( basename "$1" | cut -c 1-17 | sed "s/\(....\)-\(..\)-\(..\) \(....\)\(..\)/\1\2\3\4.\5/" )
  touch -t $date_fichier "$1"
}
export -f modifier_date
find "${repertoire_photo}" -name "????-??-?? ??????.jpg" -exec bash -c 'modifier_date "{}"' \;

En fait j'ai copier coller le 1er long code, j'ai ouvert automator, j'ai fait application, ensuite " exécuter un script Shell " j'ai collé le code.

Ensuite j'ai mis mon chemin dans la ligne " repertoire_photo="MONCHEMIN" ensuite j'ai modifié le JPG en m4v quand il s'agit de vidéo etc.. et puis j'ai lancé ça à marché ^^J e peux le sauvegarder et en faire une app ^^