#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
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