File size: 1,401 Bytes
9af8260
 
d259f2b
396528a
d259f2b
9af8260
 
 
d259f2b
 
5dc0b72
d259f2b
 
 
 
 
 
 
9af8260
6cc66e1
aa75bb5
d259f2b
aa75bb5
c120c39
d259f2b
 
 
 
 
c646a25
9af8260
d259f2b
9af8260
 
d259f2b
 
 
c120c39
d259f2b
6a91596
d259f2b
 
 
 
 
 
 
 
 
aa75bb5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/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