He llamado al script elimina_caracteres.sh y le he dado permisos de ejecución. Como argumento le he pasado un archivo denominado script_borrar_caracteres_explicacion.txt:
Código: Seleccionar todo
guillermo@maquina:~$ ./elimina_caracteres.sh ~/Documentos/script_borrar_caracteres_explicacion.txt
Código: Seleccionar todo
#!/bin/bash
# Verificar que se ha pasado un argumento
if [ "$#" -ne 1 ]; then
echo "Uso: $0 <ruta_del_archivo>"
exit 1
fi
# Obtener la ruta del archivo
archivo_original="$1"
# Verificar que el archivo existe
if [ ! -f "$archivo_original" ]; then
echo "El archivo '$archivo_original' no existe."
exit 1
fi
# Definir el nombre del nuevo archivo
archivo_modificado="${archivo_original%.txt}.modificado.txt"
# Usar sed para eliminar los caracteres y patrones especificados
sed -e 's/\*//g' -e 's/###//g' -e 's/##//g' "$archivo_original" > "$archivo_modificado"
# Confirmar que el archivo ha sido creado
echo "Archivo modificado creado: $archivo_modificado"
- `sed -e 's/\**//g'`: Elimina todos los 2 asteriscos (`**`).
- `-e 's/###//g'`: Elimina todas las ocurrencias de `###`.
- `-e 's/##//g'`: Elimina todas las ocurrencias de `##`.
- `"$archivo_original"`: Especifica el archivo de entrada.
- `> "$archivo_modificado"`: Redirige la salida a un nuevo archivo.
Cómo Usar el Script
1. Guarda el script en un archivo, por ejemplo, `elimina_caracteres.sh`.
2. Dale permisos de ejecución:
Código: Seleccionar todo
chmod +x elimina_caracteres.sh
Código: Seleccionar todo
./elimina_caracteres.sh script_modificar_archivo.txt
El archivo de salida (`script_modificar_archivo.modificado.txt`) contendrá el mismo contenido que el archivo original, pero sin los caracteres y patrones que hemos especificado en el script.