Le 28/09/06, Jacques-Philippe JUBENOT <[EMAIL PROTECTED]> a écrit :

> Si je comprend bien.
> Mon fichier script devrait être comme suit.
> 
> echo ${var##*_}

Cette ligne est inutile, mais elle résulte peut-être d'un copier-coller
rapide...

> for jpg in *.jpg; do
> if [ -e "${jpg:5}" ]; then
>       echo $jpg non renommé
>       else mv "$jpg" "${jpg:5}"
> fi
> done

IL faut que tu sois sûr que tous tes fichiers aient le même format de
nom. La variante que tu as choisie dans le mail de Jipe (${jpg:5}) a
pour effet de renommer chaque fichier en supprimant les 4 premiers
caractères. Donc il faut être sûr que c'est bon (et/ou faire une
sauvegarde des photos avant de faire tourner le script dessus, c'est
toujours préférable de toutes façons).

A part cette petite mise en garde, il faut voir que ce script traitera
toutes les images JPG du répertoire courant (le répertoire dans lequel
tu te trouves quand tu lances l'exécution du script). En particulier,
si tu as des photos dans des sous-répertoires de ce répertoire, elles
ne seront pas traitées. Il faudra, soit faire tourner le script dans
chacun des sous-répertoires, soit écrire un script un peu plus évolué.
Quelque chose comme :

find . -name '*.jpg' | while read file; do
    if [ -e "${file:5}" ]; then
            echo $file non renommé
            else mv "$file" "${file:5}"
    fi  
done


Enfin, pour exécuter le script, il faut que tu enregistres un
fichier texte avec la première ligne qui indique l'interpréteur :

#!/bin/bash
for jpg in *.jpg; do
if [ -e "${jpg:5}" ]; then
        echo $jpg non renommé
        else mv "$jpg" "${jpg:5}"
fi
done

Supposons que tu l'appelles rename.sh (l'extension .sh n'est pas
obligatoire mais ça permet de voir rapidement que c'est un script shell
quand on fait "ls"). Tu l'enregistres dans le répertoire de tes photos
et tu le rends exécutable :

cd le/répertoire/des/photos
chmod u+x rename.sh

Puis tu l'exécutes :
./rename.sh

Bon, j'ai peut-être dit des trucs que tu savais déjà, mais bon, je me
sentais l'âme pédagogique ce soir ^_^

-- 
Christophe Gaubert
http://ch4tn01r.free.fr/blog
Participez à la liste Avis de citoyens :
http://fr.groups.yahoo.com/group/Avis_de_citoyens/

=========================================
Vous souhaitez acquerir votre Pack ou des Services Mandriva?
Rendez-vous sur "http://store.mandriva.com";.
Rejoignez le club mandrake : http://www.mandrivaclub.com
=========================================

Répondre à