#!/bin/bash # Verificar si se pasaron los archivos de entrada y salida como parámetros if [ $# -ne 2 ]; then echo "Uso: $0 archivo_de_entrada archivo_de_salida" exit 1 fi archivo_entrada="$1" archivo_salida="$2" echo "Cargando..." # Verificar si el archivo de entrada existe if [ ! -f "$archivo_entrada" ]; then echo "El archivo $archivo_entrada no existe." exit 1 fi # Limpiar el archivo de salida > "$archivo_salida" echo "Salida limpiada" lineas=$(cat $archivo_entrada) # Leer el archivo de entrada línea por línea for ruta in $lineas; do # Verificar si la ruta termina en * if [[ "$ruta" == *\* ]]; then # Eliminar el * al final de la ruta ruta="${ruta%*}" # Encontrar todos los archivos en la ruta y subrutas archivos=$(find "$ruta" -type f 2>/dev/null) else archivos="$ruta" fi # Procesar cada archivo encontrado for archivo in $archivos; do if [ -f "$archivo" ]; then echo "Guardando $archivo" # Obtener el contenido del archivo contenido=$(cat "$archivo" | echo "") if [ -z "$contenido" ]; then valor="" else valor=$(echo "$contenido" | base64) fi # Escribir Nombre:Valor en el archivo de salida echo "$archivo:$valor" >> "$archivo_salida" fi done done