Comment puis-je convertir par lot les fichiers d'un répertoire pour leur encodage (par exemple ANSI UTF-8) avec une commande ou un outil ?
Pour les fichiers uniques, un éditeur est utile, mais comment faire le travail pour les fichiers de masse ?
Comment puis-je convertir par lot les fichiers d'un répertoire pour leur encodage (par exemple ANSI UTF-8) avec une commande ou un outil ?
Pour les fichiers uniques, un éditeur est utile, mais comment faire le travail pour les fichiers de masse ?
Dans mon cas d'utilisation, j'avais besoin d'une détection automatique de l'encodage d'entrée et il y avait beaucoup de fichiers avec des codes d'entrée. Windows-1250 pour lequel la commande file -bi <FILE>
renvoie à charset=unknown-8bit
. Ce n'est pas un paramètre valide pour iconv
.
J'ai eu les meilleurs résultats avec enca .
Convertir tous les fichiers avec l'extension txt en UTF-8
find . -type f -iname *.txt -exec sh -c 'echo "$1" && enca "$1" -x utf-8' -- {} \;
Utilisez ce script Python : https://github.com/goerz/convert_encoding.py Il fonctionne sur n'importe quelle plateforme. Nécessite Python 2.7.
Il y a dos2unix
sur Unix. Il existait un autre outil similaire pour Windows ( une autre référence est ici ).
Comment convertir des fichiers texte Unix en fichiers texte Windows ? a d'autres astuces.
Il existe un convertisseur d'encodage par lot gratuit et open source nommé Convertisseur CP .
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.