GNU/Linux >> Tutoriales Linux >  >> Linux

iconv cualquier codificación a UTF-8

Compilándolos todos. Ir a dir, crear dir2utf8.sh :

#!/bin/bash
# converting all files in a dir to utf8

for f in *
do
  if test -f $f then
    echo -e "\nConverting $f"
    CHARSET="$(file -bi "$f"|awk -F "=" '{print $2}')"
    if [ "$CHARSET" != utf-8 ]; then
      iconv -f "$CHARSET" -t utf8 "$f" -o "$f"
    fi
  else
    echo -e "\nSkipping $f - it's a regular file";
  fi
done

Tal vez estés buscando enca :

Enca es un analizador de charset extremadamente ingenuo. Detecta el conjunto de caracteres y la codificación de los archivos de texto y también puede convertirlos a otras codificaciones utilizando un convertidor integrado o bibliotecas y herramientas externas como libiconv, librecode o cstocs.

Actualmente es compatible con bielorruso, búlgaro, croata, checo, estonio, húngaro, letón, lituano, polaco, ruso, eslovaco, esloveno, ucraniano, chino y algunas codificaciones multibyte independientemente del idioma.

Tenga en cuenta que, en general, la detección automática de la codificación actual es un proceso difícil (la misma secuencia de bytes puede ser texto correcto en múltiples codificaciones). enca usa heurística basada en el lenguaje que le dices que detecte (para limitar el número de codificaciones). Puedes usar enconv para convertir archivos de texto a una sola codificación.


Puede obtener lo que necesita utilizando el archivo gnu utils estándar y awk. Ejemplo:

file -bi .xsession-errors me da:"text/plain; charset=us-ascii"

entonces file -bi .xsession-errors |awk -F "=" '{print $2}' me da "us-ascii"

Lo uso en scripts así:

CHARSET="$(file -bi "$i"|awk -F "=" '{print $2}')"

if [ "$CHARSET" != utf-8 ]; then
  iconv -f "$CHARSET" -t utf8 "$i" -o outfile
fi

Linux
  1. Cómo convertir archivos a codificación UTF-8 en Linux

  2. Tr analógico para caracteres Unicode?

  3. ¿Codificación de un archivo zip?

  4. ¿Gobolinux sigue activo?

  5. “cola -f | Iconv -fsjis” ¿No genera nada?

¿Alguna experiencia con Java en Raspberry PI?

Hibernate + MySQL:cómo configurar la codificación utf-8 para bases de datos y tablas

Reparación de codificación de etiquetas ID3

Cómo convertir un archivo de texto de Shift JIS a UTF-8 y viceversa desde la terminal

¿Qué hace CAP_NET_RAW?

¿Es X11 peligroso?