@MiNiShOoTeR
C'est vraiment tiré par les cheveux 😃
Mais c'est comme ça qu'on apprends !
Tu as essayé rename; il prends la syntaxe sed (mais en perl regex).
Ca donne:
rename 'y/àçéèëêïîöôùüûÀÇÉÈËÊÏÎÖÔÙÜÛ/aceeeeiioouuuACEEEEIIOOUUU/' *
L'asterix pour traiter tous les fichiers du dossier courant. Tu peux t'amuser à chercher les fichiers avec les caractères à supprimer avant le rename, passe par
-iregex de find par exemple, ou
-exec, ca sera plus rapide de l'intégrer à find.
Ca donnerait un truc du genre (attention, c'est récursif ):
find /home/dossier -iregex <pattern> -exec rename <pattern> {} \;
Où le pattern de rename sera:
'y/àçéèëêïîöôùüûÀÇÉÈËÊÏÎÖÔÙÜÛ/aceeeeiioouuuACEEEEIIOOUUU/'
et celui de -iregex (à completer, mais je pense qu'il ne sera pas nécessaire d'écrire les majuscules)
".*à.*\|.*é.*\|.*è.*\|.*ê.*"
Ca risque de donner une ligne indigeste 🙂
Fais des essais, mais je pense que la solution de rename simple sera plus rapide que de matcher avant si un caractères est dans le nom de fichier.
Attention, comme pour
black_bird, find est récursif, il faut l'option
maxdepth pour l'éviter.
Maintenant, il existe peut être une autre solution, une commande ou autre ...? (doit surement avoir qql'un qui a du coder ça !)