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 26/05/2014, à 07:03

emi_lien

créer un script pour renommer photos et vidéos

Bonjour,
J'aimerais créer un script permettant de renommer ma collection de photos et vidéos :
- suivant la date du cliché comme ceci AAAAMMJJ_HHMMSS.extension
- si cette date n'existe pas ou est vide (pour les vidéos par exemple), prendre la date de modification
N'y connaissant pas grand chose, un peu d'aide serait la bienvenue :-)

Hors ligne

#2 Le 26/05/2014, à 10:03

pingouinux

Re : créer un script pour renommer photos et vidéos

Bonjour,
Voici un script qui récupère la date des photos en utilisant exif.
Il y a un risque que plusieurs fichiers aient la même date de modification à la seconde près.

#!/bin/bash

for i in /chemin_du_répertoire_où_sont_les_fichiers/*
do
 # On ne traite pas les répertoires
   [ -d "$i" ] && continue

   echo ================================= $i

   rep=${i%/*}  # Répertoire
   ext=${i##*.} # Extension

 # En version française, modifier le tag en conséquence
   if dat=$(exif --tag='Date and Time (Original)' --ifd=EXIF "$i")
   then
    # Date de la photo fournie par la commande exif
      dat=$(awk -F: '$1=="  Value"{$0=sprintf("%s%s%s%s%s",$2,$3,$4,$5,$6,$7); sub(" ",""); sub(" ","_"); print}' <<<"$dat")
   else
    # Date de modification de la photo fournie par la commande stat
      dat=$(date -d @$(stat -c %Y "$i") +"%Y%m%d_%H%M%S")
   fi

   echo mv -i "$i" "$rep/$dat.$ext"                                       # Enlever le echo si c'est bon
done 2>&1

Hors ligne

#3 Le 26/05/2014, à 10:49

emi_lien

Re : créer un script pour renommer photos et vidéos

Merci ça a l'air de correspondre à ce que je veux... je posterai un retour quand j'aurai pu tester :-)

Hors ligne

#4 Le 26/05/2014, à 21:03

cledesol

Re : créer un script pour renommer photos et vidéos

Bonsoir

Tu installes le paquet jhead
et tu fais   "jhead -n%Y%m%d_%H%M%S  *.jpg

et toutes tes photos xxx.jpg seront renommée.

(Pour les photos ayant des données EXIF ...)

Dernière modification par cledesol (Le 26/05/2014, à 21:05)


Bon, eh bien je vais partir en Théorie parce qu'en Théorie, tout se passe bien ....

Hors ligne

#5 Le 27/05/2014, à 22:35

emi_lien

Re : créer un script pour renommer photos et vidéos

@pingouinux : j'ai enregistré ton script dans un fichier renommer.sh mais lorsque je l’exécute :

$ ./renommer.sh
================================= /home/emilien/Images/A trier/Test script/DSC_0312.jpg
mv -i /home/emilien/Images/A trier/Test script/DSC_0312.jpg /home/emilien/Images/A trier/Test script/20140518_150057.jpg

mais ma photo (une seule photo est présente dans le dossier Test script) n'est pas renommée...

Une idée ?

Même résultat en remplaçant mv -i par mv -f à la fin du script...

Hors ligne

#6 Le 27/05/2014, à 23:11

Postmortem

Re : créer un script pour renommer photos et vidéos

Salut,
T'as pensé à enlever le echo devant mv -i ?


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#7 Le 28/05/2014, à 07:26

emi_lien

Re : créer un script pour renommer photos et vidéos

Quel con :-)

Merci c'est parfait !
J'ai juste enlevé le -i car lorsqu'il y a 200 photos à renommer, je ne préfère pas confirmer 200 fois :-)
Et j'ai ajouté un rm /home/mon/dossier/*.THM car mon appareil photo créer ce type de fichiers avec des *.AVI

Juste une dernière question : est-il possible de juste cliquer sur le script pour l'exécuter (au lieu d'ouvrir un terminal, de faire un cd /home/mon/dossier, puis de lancer le script via ./monscript.sh) ?

Hors ligne

#8 Le 28/05/2014, à 07:34

pingouinux

Re : créer un script pour renommer photos et vidéos

emi_lien a écrit :

J'ai juste enlevé le -i car lorsqu'il y a 200 photos à renommer, je ne préfère pas confirmer 200 fois

La confirmation n'est demandée que si le fichier existe déjà dans le répertoire de destination. Sans -i, un fichier de même nom va être purement et simplement écrasé. C'est à toi de voir…

Hors ligne