for i in dsc_*; do mv $i `echo $i | sed "/^dsc_/s//2010-07-vacances-/"`; done
« dsc_ » sera remplacé par « 2010-07-vacances-«
Ce qui donnera des noms de fichier du genre :
2010-07-vacances-0007.jpg 2010-07-vacances-0009.jpg 2010-07-vacances-0016.jpg
Pour éviter de retaper la ligne on peut faire un mini script:
#!/bin/bash # renommer des photos dans le répertoire courant. echo "Entrez ce que vous souhaitez remplacer, ex. dsc_, DSC ..." echo "Gardez la numérotation finale des photos..." echo -n "respectez les la casse, majuscules / Minuscules : " read rempl echo -n "Entrez ce que vous souhaitez voir à la place : " read souhait for i in "$rempl"* do mv $i `echo $i | sed "/^"$rempl"/s//"$souhait"/"` done echo "TERMINE"
On va le nommer « renom-photos.sh »
Le rendre exécutable par:
chmod +x renom-photos.sh
Plaçons-le dans le répertoire courant et utilisons-le.
Voyons ce qu’il y a dans le répertoire courant.
$ ls -l total 10764 -rwxr-xr-x 1 sima78 sima78 2231659 2010-06-13 16:07 DSC_0007.JPG -rwxr-xr-x 1 sima78 sima78 2720329 2010-06-13 16:09 DSC_0009.JPG -rwxr-xr-x 1 sima78 sima78 1996609 2010-06-18 15:04 DSC_0016.JPG -rwxr-xr-x 1 sima78 sima78 383 2010-08-17 20:55 renom-photos.sh -rwxr-xr-x 1 sima78 sima78 2036985 2010-06-18 15:03 souhait0015.JPG -rwxr-xr-x 1 sima78 sima78 1996609 2010-06-18 15:04 souhait0016.JPG
On voit aussi le script qui se termine par .sh et je souhaite renommer mes photos DSC_*
Je lance le script et réponds au 2 questions…
$ ./renom-fotos.sh Entrez ce que vous souhaitez remplacer, ex. dsc_, DSC ... (ici se serait DSC_) Gardez la numérotation finale des photos... respectez les la casse, majuscules / Minuscules : DSC_ Entrez ce que vous souhaitez voir à la place : 2010-07-vacances- TERMINE
Voyons le résultat.
$ ls -l total 10764 -rwxr-xr-x 1 sima78 sima78 2231659 2010-06-13 16:07 2010-07-vacances-0007.JPG -rwxr-xr-x 1 sima78 sima78 2720329 2010-06-13 16:09 2010-07-vacances-0009.JPG -rwxr-xr-x 1 sima78 sima78 1996609 2010-06-18 15:04 2010-07-vacances-0016.JPG -rwxr-xr-x 1 sima78 sima78 383 2010-08-17 20:55 renom-fotos.sh -rwxr-xr-x 1 sima78 sima78 2036985 2010-06-18 15:03 souhait0015.JPG -rwxr-xr-x 1 sima78 sima78 1996609 2010-06-18 15:04 souhait0016.JPG drwxr-xr-x 2 sima78 sima78 4096 2010-08-17 20:50 sous-photos
Il a donc bien modifier les fichiers commençant par « DSC_ »
Maintenant, tout ça peut être perfectionné… à vos shells.

Renommer sans utiliser les
Métadonnées EXIF d’une photo.
Révoquer une clé GnuPG
C’est toujours plus simple de travailler sur des fichiers n’ayant pas d’espace dans leur nom, alors voici un petit script qui permet de remplacer à la volée les espaces par des « _ ».
La punition de mon fils.