2009-08-01 00:29:36 +0000 2009-08-01 00:29:36 +0000
46
46

¿Cómo puedo convertir varios archivos a la codificación UTF-8 utilizando herramientas de línea de comandos de *nix?

Posible duplicado: Convertir archivos por lotes para codificación o final de línea

Tengo un montón de archivos de texto que me gustaría convertir de cualquier conjunto de caracteres a la codificación UTF-8.

¿Existe alguna herramienta de línea de comandos o one liners de Perl (o el lenguaje de su elección) que pueda utilizar para hacer esto en masa?

Respuestas (1)

56
56
56
2009-08-01 01:25:17 +0000

iconv convierte entre muchas codificaciones de caracteres. Así que añadiendo un poco de magia bash podemos escribir

for file in *.txt; do
    iconv -f ascii -t utf-8 "$file" -o "${file%.txt}.utf8.txt"
done

Esto ejecutará iconv -f ascii -t utf-8 a cada archivo que termine en .txt, enviando el archivo recodificado a un archivo con el mismo nombre pero que termine en .utf8.txt en lugar de .txt.

No es que esto vaya a hacer nada a tus archivos (porque ASCII es un subconjunto de UTF-8), pero para responder a tu pregunta sobre cómo convertir entre codificaciones.

Preguntas relacionadas

6
10
5
37
8