URL: https://linuxfr.org/forums/astucesdivers/posts/admin-convertir-son-fs-linux-ext2ext3-iso-8859-15-au-format-u Title: [Admin] Convertir son FS Linux ext2/ext3 iso-8859-15 au format UTF8 Authors: yannig Date: 2006年05月31日T14:18:53+02:00 Tags: fedora Score: 1 Vous utilisiez une Distribution avec un encodage des noms de fichiers à la norme iso-8859-15 (Mandriva par exemple) et vous passez maintenant sur une distribution gérant les FS avec la norme UTF8 (Ubuntu, Fedora etc) et vous êtes emmerdé avec vos accents dans les noms de fichiers ? Vite, créez le script convert.sh avec le contenu suivant : #!/bin/bash FROM=iso-8859-15 TO=UTF8 EXCLUDE="Ê|Ë|É|È|Â|À|Î|Ï|Ô|Ô|Û|Ù|Ç|Ñ|à|â|é|è|ê|ë|î|ï|ç|ô|ö|û|ù|ñ|°" convert_a_directory() { let l=l+1 export l echo "Conversion en cours : $(printf "%$l.${l}s") 1ドル" >&2 cd -- "1ドル" for fic in * do base_fic=$(basename -- "$fic") if echo "$base_fic" | egrep -e "$EXCLUDE" > /dev/null; then # echo "$base_fic OK" >&2 continue fi rename=$(echo "$base_fic" | iconv -f $FROM -t $TO) if [ ! "$rename" = "$fic" ]; then printf " Renommage : \n %s -> \n %s\n\n" "$base_fic" "$rename" >&2 mv "$base_fic" "$rename" fi if [ -d "$fic" ]; then convert_a_directory "$fic" fi done cd .. let l=l-1 export l } convert_a_directory "${*:-"."}" Rendez le exécutable : $ chmod +x ./convert.sh Et lancez le ensuite à l'aide de la manière suivante : $ ./convert.sh Dev Conversion en cours : Dev Conversion en cours : Figure Conversion en cours : Figure Conversion en cours : Matrix Conversion en cours : Matrix Renommage : Matrix3D - 17 d?cembre 2001.zip -> Matrix3D - 17 décembre 2001.zip Conversion en cours : Matrix v0.1 Conversion en cours : Figure Conversion en cours : Matrix Conversion en cours : Matrix v0.2 ... En principe, il est réentrant et il ne convertira pas 2 fois un fichier (si vous faîtes 2 conversions, vous faîtes une corruption sur les accents dans le nom des fichiers). Le script s'appuie sur la présence de l'utilitaire iconv.

AltStyle によって変換されたページ (->オリジナル) /