2010-04-27 4 views
11

J'ai un tas de fichiers texte codés en ISO-8851-2 (avec des caractères polonais). Existe-t-il un outil de ligne de commande pour linux/mac que je pourrais lancer à partir d'un script shell pour le convertir en un utf-8 plus sain?Conversion de charset de XXX à utf-8, ligne de commande

+1

Très probablement ISO-885 ** 9 ** - 2. L'ISO 8851 parle du beurre. – Melebius

Répondre

23

A partir de la ligne de commande, utilisez

iconv -f LATIN1 -t UTF8 

Vous voudrez peut-être ajouter à //TRANSLITUTF8.

+4

Sur OSX au moins le codage utf est appelé UTF-8, donc la commande est "iconv -f LATIN1 -t UTF-8" –

+0

@ThomasParslow, 'iconv -l' liste à la fois' UTF8' et 'UTF-8'. – lhf

+0

@lfh peut-être une faute de frappe ... en utilisant UTF8 résultats dans 'iconv: conversion à UTF8 non pris en charge' UTF-8 est plutôt accepté. Juste essayé – Paolo

3

GNU 'libiconv' devrait être capable de faire le travail.

+0

Merci! Je savais que ce serait plus facile que je ne le pensais! – Marcin

9
recode latin2..utf8 myfile.txt 

Ceci va remplacer myfile.txt avec la nouvelle version. Vous pouvez également utiliser recode sans nom de fichier comme un tuyau.

+1

Beaucoup plus efficace que la réponse acceptée, car iconv ne remplacera pas le même fichier, même en utilisant les redirections -o ou en sortie. –

Questions connexes