On Wed, Jan 26, 2005 at 02:19:26PM +0100, Marc SCHAEFER wrote:
> On Tue, Jan 25, 2005 at 06:49:17PM +0100, Philippe Strauss wrote:
> > J'avais une s�rie de fichier .wav dont le e accent aigu �tait pas
> > bien interpr�t� (on voyait un ? a la place).
> > Comment faire pour renommer tout d'un coup, genre:
> 
> On peut aussi utiliser le programme Perl rename -- livr� avec perl-base
> avec la Debian sauf erreur
> 
>    touch 'ceci est un essai.wav'
>    rename 's/ /_/g' *.wav
Int�ressant!
$ ls >f�lix
$ echo coucou >felix
$ rename 'tr/�����/aaeee/' f�lix 
f�lix not renamed: felix already exists
$ # Bien! Manque peut-�tre un --interactif (-i ;)
$ rm felix
$ rename 'tr/�����/aaeee/' f�lix 
$ ls f?lix
-rw-r--r--  1 felix felix 2362 2005-01-26 21:36 felix

Well!, bon 'faut connaitre les perl regexp ;-b

Mon alternative:
$ for file in *;do
    new="$(printf "%s" "$file" |
            recode -d -f lat1..flat)"
    [ "$file" == "$new" ] || \
            mv -i "$file" "$new"
    done

Pas tr�s long mais efficace... Et pour les espaces:

$ echo "salut" >"Il est d�j� tard..."
$ for file in *;do
    new="$(printf "%s" "$file" | \
        tr \  _  | \
        recode -d -f lat1..flat)"
    [ "$file" == "$new" ] || \
        mv -i "$file" "$new" 
    done
$ ls *tard.*
-rw-r--r--  1 felix felix         6 2005-01-26 22:09 Il_est_deja_tard...

Attention aux DEUX espace entre le ``\'' et le ``_'' de la 
commande tr!

Sur ce il commence � �tre tard, je vous souhaite une bonne nuit.

-- 
 F�lix Hauri  -  <[EMAIL PROTECTED]>  -  http://www.f-hauri.ch
_______________________________________________
gull mailing list
[email protected]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à