J'ai 3 types d' file name
encodages sur reiserfs
disque dur monté: CP1251, KOI-8, UTF-8 et ASCII. J'ai vraiment besoin de convertir tous les encodages en UTF-8, récursivement. Existe-t-il un utilitaire qui détecte le codage source et le convertit en UTF-8 ou dois-je écrire un script Python?
8
detox
. Cela a fonctionné pour moi entre ISO-8859-1 et UTF-8 en utilisant-s iso8859_1-only
Réponses:
Utilisez convmv, un outil CLI qui convertit le nom de fichier entre différents encodages. Pour convertir de (
-f
) ces entrées en (-t
) UTF-8, procédez comme suit:De plus, si vous souhaitez convertir le contenu du fichier, utilisez
iconv
un outil CLI pour convertir le contenu du fichier en différents encodages. Pour convertir de (-f
) ces entrées en (-t
) UTF-8, procédez comme suit:la source
Nan. L'un des gros inconvénients de l'ancien système de pages de codes est qu'il n'y a aucun moyen de détecter lequel est utilisé; il faut simplement savoir cela a priori. Si vous savez quels fichiers utilisent quel encodage, vous pouvez convertir les noms en utilisant quelque chose comme:
la source
chardet
détecte d'une manière ou d'une autre ...Même solution avec
iconv
@psusi sugeses mais avec boucle et while-card:Également un
sh
script shell en ligne :Avec lecture de la carte en cours de conduite:
la source