Ver Mensaje Individual
  #5 (permalink)  
Antiguo 25/06/2005, 19:06
Avatar de -Defero-
-Defero-
Colaborador
 
Fecha de Ingreso: julio-2004
Ubicación: Guipúzcoa
Mensajes: 4.776
Antigüedad: 19 años, 9 meses
Puntos: 76
Una variante del script: ahora si tecleamos "acentos archivo.html", primero creará una copia de seguridad del archivo de nombre "archivo.html.bak", luego realizará los cambios en dicho archivo, y guardará los cambios de nuevo en el archivo "archivo.html". De esta manera el archivo modificado resultante tendrá el mismo nombre que el original (con lo cual no hay que tomarse la molestia de andar cambiando la extensión al archivo), y se habrá creado un archivo de respaldo de extensión .bak, por si acaso. Ah, de paso también he añadido unos cuantos caracteres especiales más. El código es el siguiente:

#!/bin/bash
archivo=$1
cp $archivo ${archivo}.bak && cat ${archivo}.bak | sed -e 's/á/\á/g' -e 's/é/\é/g' -e 's/í/\í/g' -e 's/ó/\ó/g' -e 's/ú/\ú/g' -e 's/ñ/\ñ/g' -e 's/Á/\Á/g' -e 's/É/\É/g' -e 's/Í/\Í/g' -e 's/Ó/\Ó/g' -e 's/Ú/\Ú/g' -e 's/Ñ/\Ñ/g' -e 's/©/\©/g' -e 's/¡/\¡/g' -e 's/§/\§/g' -e 's/ª/\ª/g' -e 's/«/\«/g' -e 's/®/\®/g' -e 's/±/\±/g' -e 's/²/\²/g' -e 's/³/\³/g' -e 's/¶/\¶/g' -e 's/º/\º/g' -e 's/»/\»/g' -e 's/¿/\¿/g' -e 's/Æ/\Æ/g' -e 's/Ç/\Ç/g' -e 's/æ/\æ/g' -e 's/ç/\ç/g' -e 's/Ü/\Ü/g' -e 's/ü/\ü/g' > $archivo

Por cierto, se me olvidaba comentar que moviendo el ejecutable al directorio /usr/bin tendremos acceso al mismo desde cualquier punto de la estructura de directorios y desde cualquier cuenta de usuario.

Tengo varias ideas para añadirle funcionalidad al script, como por ejemplo poder procesar varios archivos escribiendo una sola línea (acentos archivo1.html archivo2.html archivo3.html) en vez de tener que modificarlos uno a uno; poder utilizar comodines para modificar (por ejemplo) todos los archivos que tengan extensión HTML (acentos *.html); añadir una explicación del funcionamiento del script (acentos --help), mensajes de error para cuando no se encuentra el archivo indicado o no se indica nombre de archivo... pero para eso ya habrá tiempo. De momento que el script funcione, aunque sea muy rudimentario, para mí ya es un gran logro.
__________________
abogado en Errenteria + procuradora en San Sebastián = equipo imparable

Última edición por -Defero-; 25/06/2005 a las 19:24