Gigastur

Servicios informáticos

615 654 407
info@gigastur.com

  • Inicio
  • Servicios
    • Asistencia a domicilio
    • Reparación de ordenadores
    • Mantenimiento para empresas
    • Diseño web y hosting
  • Precios
    • Mantenimiento para empresas
    • Diseño web
    • Asistencia a domicilio
    • Reparaciones en tienda
    • Bonos de mantenimiento
    • Alojamiento web
  • Trabajos realizados
  • Contacto
  • Blog
    • Comandos Linux
    • Comandos Windows
    • MySQL
    • Laravel
    • Steam
    • Herramientas Sysadmin

Cambiar codificación del contenido de ficheros en Linux

27/06/2018 por Igor García Deja un comentario

Ya hemos visto anteriormente como cambiar la codificación del nombre de ficheros en Linux Ahora veremos como cambiar la codificación de su contenido con la ayuda del comando iconv. La mayoría de las veces el cambio que necesitaremos será de LATIN1 a UTF8 o viceversa.

Primero debemos saber la codificación actual del archivo con el comando file:

file archivo.php
archivo.php: PHP script, ISO-8859 text

Vemos que es ISO-8859, que corresponde a LATIN1.

Comprobamos con iconv -l las posibles codificaciones que soporta, y vemos que ISO-8859 exactamente no está, pero sí ISO-8859-1, ISO-8859-2, etc. Usaremos ISO-8859-1 que corresponde a LATIN1. Para pasarlo a utf8 usaremos:

iconv -f ISO-8859-1 -t utf8 archivo.php -o archivo-nuevo.php

  • -f: --from-code, la codificación actual del fichero
  • -t: --to-code, la codificación que deseamos tener
  • -o: --output, el fichero con la nueva codificación. Si ejecutamos el comando sin este parámetro mostrará el fichero por pantalla pero no hará nada con él.

En el ejemplo también podriamos haber usado LATIN1 en lugar de ISO-8859-1 para hacer la conversión.

En github tenemos un script muy útil para cambiar la codificación de ficheros html, php, css y js recursivamente, borrando el original:

find ./ -name "*.php" -o -name "*.html" -o -name "*.css" -o -name "*.js" -type f |
while read file
do
echo " $file"
mv $file $file.icv
iconv -f ISO-8859-1 -t UTF-8 $file.icv > $file
rm -f $file.icv
done

Podemos modificarlo facilmente para otras extensiones de archivo.

Codificación de acentos HTML

Otro problema habitual lo tenemos con el html interpretando mal los acentos.

En estos casos cambiaremos las vocales acentuadas y ñ por sus equivalentes HTML:

find . -type f -name '*php' -exec sed -i 's/á/\á/g' {} +
find . -type f -name '*php' -exec sed -i 's/é/\é/g' {} +
find . -type f -name '*php' -exec sed -i 's/í/\í/g' {} +
find . -type f -name '*php' -exec sed -i 's/ó/\ó/g' {} +
find . -type f -name '*php' -exec sed -i 's/ú/\ú/g' {} +
find . -type f -name '*php' -exec sed -i 's/ñ/\ñ/g' {} +

También puede ayudarnos el comando recode:

echo 'avión' | recode ..html
avión
echo 'avión' | recode html/..
avión

Categorías: Linux Etiquetas: codificación, comandos, Linux

Categorías

Enlaces

  • Abode PDF Reader
  • Actualizar a Windows 10
  • Anti Ransomware
  • Aviso de cookies
  • Browser Diet
  • Buenas practicas Ransomware
  • BuiltWith
  • cdlibre
  • Chocolatey
  • CIDR Calculator
  • Consulta numero móvil
  • Cual es mi IP
  • Descarga de DLL
  • Descarga de OCX
  • Descarga de RPM
  • Descarga de Windows y Office
  • Descarga de Windows y Office
  • DistroTest
  • Dumo
  • explainshell
  • File-extensions
  • FileHippo
  • Flash Player
  • Geolocalización Multi IP
  • HDDScan
  • htaccesstools
  • Ip Location
  • Kaspersky
  • LinuxServer.io
  • Máquinas Virtuales OSBoxes
  • Microsoft Doc
  • ms-vnext: Windows y Office
  • Ninite
  • Nirsoft
  • Open Source Alternatives
  • Patch My PC
  • PC decrapifier
  • PCI Lookup
  • PCI-IDS
  • pcidatabase
  • PCIids
  • Port Listener
  • Portable Freeware
  • Router Passwords
  • Saber tipografía de una foto
  • Shodan
  • Ssega
  • Sumo
  • Sysinternals
  • SystemRescueCd
  • Test de velocidad
  • The eye
  • Virustotal
  • Windows ISO
  • Windows Mini
  • WizTree
  • You Get Signal

Contacto

  • 615 654 407
  • info@gigastur.com

Entradas recientes

  • Estructura de una cuenta de correo en un servidor Postfix
  • Crear directorios automáticamente con comandos Linux
  • Arreglar error MySQL: field doesn't have a default value
  • Ubuntu desktop: Mostrar información del sistema al iniciar sesión SSH
  • Añadir cuarta columna en homepage del tema WordPress Genesis Enterprise Pro

Control remoto

  • Control remoto Windows
  • Control remoto MAC
  • Control remoto Linux AMD64
  • Control remoto Linux i386
  • Versión completa
  • Servicio
  • Servicio (descarga alternativa)

Aviso legal | Política de privacidad | Política de cookies

Utilizamos cookies para ofrecerte la mejor experiencia en nuestra web.

Puedes aprender más sobre qué cookies utilizamos o desactivarlas en los ajustes.

Gigastur
Powered by  GDPR Cookie Compliance
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Cookies estrictamente necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.

Si desactivas esta cookie no podremos guardar tus preferencias. Esto significa que cada vez que visites esta web tendrás que activar o desactivar las cookies de nuevo.

Cookies de terceros

Esta web utiliza Google Analytics para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

Dejar esta cookie activa nos permite mejorar nuestra web.

¡Por favor, activa primero las cookies estrictamente necesarias para que podamos guardar tus preferencias!