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 | |