Cómo convertir archivos a la codificación UTF-8 en Linux
- 3433
- 364
- Berta Solano
En esta guía, describiremos qué caracteres codifica y cubriremos algunos ejemplos de conversión de archivos de un carácter que codifica a otro usando una herramienta de línea de comandos. Luego, finalmente, veremos cómo convertir varios archivos de cualquier conjunto de caracteres (charlatán) a UTF-8 Codificación en Linux.
Como probablemente ya tenga en mente, una computadora no comprende o almacena letras, números o cualquier otra cosa que nosotros, como humanos, podemos percibir excepto bits. Un bit tiene solo dos valores posibles, eso es un 0
o 1
, verdadero
o FALSO
, Sí
o No
. Cualquier otra cosa, como letras, números, imágenes, deben estar representadas en bits para que una computadora procese.
En lenguaje sencillo, codificación de caracteres es una forma de informar a una computadora cómo interpretar los ceros crudos y los de los caracteres reales, donde un personaje está representado por un conjunto de números. Cuando escribimos texto en un archivo, las palabras y oraciones que formamos se cocinan de diferentes caracteres, y los caracteres se organizan en un charlatán.
Hay varios esquemas de codificación, como Ascii, Ansi, Unicode entre otros. A continuación se muestra un ejemplo de Ascii codificación.
Bits de personaje A 01000001 B 01000010
En Linux, el iconv La herramienta de línea de comandos se utiliza para convertir el texto de una forma de codificación a otra.
Puede verificar la codificación de un archivo utilizando el archivo comando, utilizando el -i
o --mímica
Bandera que permite la impresión de la cadena de tipo MIME como en los ejemplos a continuación:
$ Archivo -i coche.Java $ Archivo -I CardRiver.JavaVerifique la codificación del archivo en Linux
La sintaxis para usar iconv es como sigue:
$ iconv opción $ iconv opciones -f de codificación -t -to -coding file (s) -o outputFile
Dónde -F
o --desde el código
significa codificación de entrada y -T
o --codificación
Especifica la codificación de salida.
Para enumerar todos los conjuntos de caracteres codificados conocidos, ejecute el comando a continuación:
$ iconv -lLista de charsets codificados en Linux
Convertir archivos de UTF-8 a codificación ASCII
A continuación, aprenderemos cómo convertir de un esquema de codificación a otro. El comando a continuación se convierte de ISO-8859-1 a UTF-8 codificación.
Considere un archivo llamado aporte.archivo
que contiene los personajes:
� � � �
Comencemos por verificar la codificación de los caracteres en el archivo y luego ver el contenido del archivo. De cerca, podemos convertir todos los personajes a Ascii codificación.
Después de ejecutar el iconv Comando, luego verificamos el contenido del archivo de salida y la nueva codificación de los caracteres como se muestra a continuación.
$ File -i Entrada.Archivo de entrada $ CAT.Archivo $ iconv -f ISO-8859-1 -T UTF-8 // Entrada de traducido.Archivo -O Out.Archivar $ Cat Out.Archivo $ Archivo -I OUT.archivoConvertir UTF-8 a ASCII en Linux
Nota: En caso de que la cadena //IGNORAR
se agrega a la codificación, caracteres que no se pueden convertir y se muestra un error después de la conversión.
De nuevo, suponiendo la cadena // TRANTIR
se agrega a la codificación como en el ejemplo anterior (ASCII // TRANTIR), los caracteres que se convierten se transliteran según sea necesario y si es posible. Lo que implica en caso de que un personaje no se pueda representar en el conjunto de caracteres objetivo, se puede aproximar a través de uno o más caracteres de aspecto similar.
En consecuencia, cualquier personaje que no pueda ser transliterado y no está en el conjunto de caracteres objetivo se reemplaza con un signo de interrogación (?)
en la salida.
Convertir múltiples archivos en codificación UTF-8
Volviendo a nuestro tema principal, para convertir múltiples o todos los archivos en un directorio a la codificación UTF-8, puede escribir un pequeño script de shell llamado codificación.mierda como sigue:
#!/bin/bash #enter Entrada de entrada aquí desde_encoding = "value_here" #output coding (utf -8) to_encoding = "utf -8" #convert convert = "iconv -f $ from_enCoding -t $ to_ENCODING" para convertir múltiples archivos para el archivo en *.TXT; hacer $ convert "$ archivo" -o "$ archivo%.TXT.UTF8.convertido "hecho la salida 0
Guarde el archivo, luego haga que el script sea ejecutable. Ejecutarlo desde el directorio donde sus archivos (*.TXT
) Están localizados.
$ chmod +x codificación.sh $ ./codificación.mierda
Importante: También puede usar este script para la conversión general de múltiples archivos de una codificación dada a otra, simplemente reproducir con los valores del De_Encoding
y To_encoding
variable, sin olvidar el nombre del archivo de salida "$ archivo%.TXT.UTF8.convertido"
.
Para obtener más información, mire a través del iconv página del hombre.
$ hombre iconv
Para resumir esta guía, comprender la codificación y cómo convertir de un esquema de codificación de caracteres a otra es el conocimiento necesario para cada usuario de la computadora más para los programadores cuando se trata de tratar con texto.
Por último, puede ponerse en contacto con nosotros utilizando la sección de comentarios a continuación para cualquier pregunta o retroalimentación.
- « Cómo encontrar un nombre de proceso usando el número PID en Linux
- 4 forma útil de conocer el nombre del dispositivo USB conectado en Linux »