Bonjour à tous,

J'utilise la commande suivante pour supprimer tous les caractères spéciaux des noms de fichiers à l'exception de ".", "@", "/", " ", "_", "-", "é" et "è".

Je travaille sur Mac et sur Mac les accents sont codés de la façon suivante :

"é" = 65cc81 en hexa
"è" = 65cc80 en hexa

Voilà la commande que j'utilise :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
e='s,[^A-Za-z0-9.@/ _\xCC\x80\x81-],,g'; find . | while read f;do c=`basename "$f"`; b=`echo ${f%$c} | sed "$e"`; rename -v "$e" "$b`basename "$f"`"; done
Le problème, c'est que mon expression régulière reconnais indépendamment les caractères \x65, \xCC, \x80 et \x81. Alors que je voudrais que mon expression régulière reconnaisse exactement le groupe de caractère \x65\xCC\x81 et \x65\xCC\x80 mais je ne sais pas comment faire.

A l'aide. Merci à tous pour votre aide.