lunes, 13 de octubre de 2008

Cómo saber y cambiar el charset de un archivo en linux

Con el comando file y la opción mime se puede saber el charset de un archivo:

[pablo@mipc admin]$ file --mime test.html
test.html: text/plain; charset=iso-8859-1

Para cambiar el charset, con el comando iconv:

[pablo@mipc admin]$ iconv --from-code=iso-8859-1 --to-code=utf-8 test.html > test_new.html

1 comentario:

pbustos dijo...

Artesanía para convertir archivos en iso-8859-1 a UTF-8:

Obtener todos los que tienen mime latin1:

find .|grep ".php\$\|.tpl\$"|awk '{print "file --mime " $1}'>borrame1.sh;sh borrame1.sh|grep "iso-8859-1"|awk -F ":" '{print $1}'>borrame2.tmp

Convertirlos:

cat borrame2.tmp|awk '{print "iconv --from-code=ISO-8859-1 --to-code=UTF-8 " $1 " > " $1 ".out ; mv " $1 ".out " $1}'>borrame3.sh
sh borrame3.sh
rm borrame*