Spaces:
Running
Running
| # Verificar si se pasaron los archivos de entrada y salida como parámetros | |
| if [ -z "$1" ] || [ -z "$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) | |
| 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") | |
| 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 | |