Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/03/2016, à 15:35

patrick L

classer selon exifs via exiftool fichier xmp joint [resolu]

bonjour à vous tous... 

j'utilise souvent darktable  et superbe logiciel.    Mais j'ai un petit soucis de code bash.  Je vais essayer le calme et la simplicité.     

alors pour résumer l'idée que j'ai ...     

j'ai un fichier  de capture d'image et ensuite suite à un traitement   via darktable j'ai un fichier joint  avec l'extension .xmp  qui se mets à coté apres le traitement. 

alors via exiftool  envoie le fichier  image dans un dossier  et  renome selon les infos exifs ,   pour moi la date original.   

mon soucis c'est que j'ai un fichier .xmp  lié au traitement de l'image capturée en direct et ensuite je fais des retouches,  ca crée un fichier capture  et ensuite la photo reste dans l'appareil.   donc je classe  les captures selon  la date  mais le fichier des retouches reste en place. 

alors je voudrais que exiftool  me dise quelque chose comme 

deplacement du fichier    2016-03-10_capture_05844.NEF deplacé dans  /media/externe/le_classement_selon_la_date/img_renomme_selon_date_et_heure.

Dernière modification par patrick L (Le 29/03/2016, à 23:51)

Hors ligne

#2 Le 18/03/2016, à 23:18

patrick L

Re : classer selon exifs via exiftool fichier xmp joint [resolu]

alors je pense avoir trouvé...   ensuite faut améliorer le concept...   et s'adapter aux retours de exiftools. 

je lance la commande pour classer ,  je préfere copier les fichiers...   

exiftool -v2 -o . -'filename<datetimeoriginal' -d '%Y/%m%B/%Y-%m-%d/img_%Y-%m%B-%d_%H-%M-%S_%A.%%e' "2016-03-17_capture job-0018.NEF" > trace 2> erreur

j'envoie dans erreur les messages d'erreur , surtout pour le cas ou le fichier renommé et déplacé soit dejà présent ce qui provoque aucun message à l'ecran  mais les deux fichiers se retrouvent dans les erreurs.   

je vais faire pour la trace normale...

Setting new values from 2016-03-17_capture job-0019.NEF                                                                                                                                                                                                                        
Writing File:FileName                                                                                                                                                                                                                                                          
Writing File:FileName                                                                                                                                                                                                                                                          
'2016-03-17_capture job-0019.NEF' --> '2016/03mars/2016-03-17/img_2016-03mars-17_18-37-34_jeudi.NEF'                                                                                                                                                                           
Rewriting 2016-03-17_capture job-0019.NEF...                                                                                                                                                                                                                                   
Nothing changed in 2016-03-17_capture job-0019.NEF                                                                                                                                                                                                                             
    1 image files copied 

j'utilise la ligne suivante

'2016-03-17_capture job-0019.NEF' --> '2016/03mars/2016-03-17/img_2016-03mars-17_18-37-34_jeudi.NEF'

pour extraire les fichiers destination et le fichier initial   et c'est via la commande sed.   

cat trace  | grep "^'$f'" | sed -r "s/^'($f)' --> '(.*)'.*$/$f#\2/g" | cut -d "#" -f 1  # ou -f 2 pour avoir la destination...

ensuite j'ai la destination   et donc je cherche dans le fichier .xmp joint   le nom de fichier de depart  pour le remplacer par la destination.
et ensuite je copie le fichier xmp dans le dossier dirname du fichier image copié. 

dest=$(cat trace | grep "^'$f'" | sed -r "s/^'($f)' --> '(.*)'.*$/$f#\2/g" | cut -d "#" -f 2)
g=$(basename "$dest") # endroit ou le fichier est copié ou déplacé...  
echo "fichier destination : ${g}.xmp"
cat "$f.xmp" | grep "$f" | sed -r "s/$f/$g/g" # pour le moment j'affiche la modification du fichier xmp pour envoyer la commande. 

Dernière modification par patrick L (Le 18/03/2016, à 23:24)

Hors ligne

#3 Le 30/03/2016, à 00:05

patrick L

Re : classer selon exifs via exiftool fichier xmp joint [resolu]

je viens de mettre en résolu...   de la maniere énoncée ci dessus.   


ca serait bien que exiftool écrive  dans un fichier de maniere formattée   genre <fichier Depart> : <fichier Arrivee>  dans un fichier...   

pour l'instant je récupere des messages d'erreurs que je reformate via sed   ....   si la sortie change au revoir le fonctionnement de mon script....

Hors ligne