Tu m'as d'ailleurs donné plusieurs exemples qui ne démontraient en rien ce que tu avais l'air de penser qu'ils démontraient : n'importe quel shell qui ne comprend pas du tout UTF8 peut arriver à faire de la complétion de noms de fichier et de passer à find un nom en UTF8.
Alors je fais une nouvelle tentative :
seb@nestor:~$ for f in /data/media/musique/flac/Sigur\ Rós/Með\ suð\ í\ eyrum\ við\ spilum\ endalaust/*.flac; do t=$(printf "%s\n" $f | file -); echo "$t - $(basename "$f")"; done
/dev/stdin: UTF-8 Unicode text - 01. Gobbledigook.flac
/dev/stdin: UTF-8 Unicode text - 02. Inní mér syngur vitleysingur.flac
/dev/stdin: UTF-8 Unicode text - 03. Góðan daginn.flac
/dev/stdin: UTF-8 Unicode text - 04. Við spilum endalaust.flac
/dev/stdin: UTF-8 Unicode text - 05. Festival.flac
/dev/stdin: UTF-8 Unicode text - 06. Með suð í eyrum.flac
/dev/stdin: UTF-8 Unicode text - 07. Ára bátur.flac
/dev/stdin: UTF-8 Unicode text - 08. Illgresi.flac
/dev/stdin: UTF-8 Unicode text - 09. Fljótavík.flac
/dev/stdin: UTF-8 Unicode text - 10. Straumnes.flac
/dev/stdin: UTF-8 Unicode text - 11. All Alright.flac(Ça fonctionne aussi sans le
printf, mais je voulais forcer bash à traiter l'affichage)
Ça te convainc un peu plus ?
Moi, je considère qu'un shell qui prend de l'UTF-8 en entrée et produit encore de l'UTF-8 en sortie sait gérer l'UTF-8 correctement (c'est à dire que ses traitements sont transparents vis-à-vis de ce jeu de caractères).
Mais ce n'est peut être pas ta définition de la bonne gestion UTF-8.
Auquel cas, j'attends la tienne pour comprendre quel doute t'habite encore ...