#!/bin/bash # $1 es la ruta absoluta al directorio del script de Python, pasada desde el código BASE_DIR="$1" # --- CONFIGURACIÓN CON RUTAS ABSOLUTAS --- SOURCE_DIR="${BASE_DIR}/data" # La variable DEST_DIR ahora contendrá el nombre del archivo ZIP con la ruta, NO un directorio TIMESTAMP=$(date +%Y-%m-%d_%H-%M) DEST_FILE="${BASE_DIR}/Copias_Backup/backup_${TIMESTAMP}.zip" # ------------------------------------------ echo "--- Iniciando copia de seguridad de: ${SOURCE_DIR} ---" # Verificar si el directorio de origen existe if [ -d "$SOURCE_DIR" ]; then echo "Comprimiendo a: $DEST_FILE" # Navegamos al directorio base para que los nombres de los archivos dentro del ZIP # sean relativos a BASE_DIR (ej. data/alarmas, data/musica). cd "$BASE_DIR" || exit 1 # Salir si no se puede cambiar de directorio # Comando 'zip': # -r: recursivo (incluye subdirectorios) # -q: silencioso (quita la lista de archivos) # Ruta del archivo ZIP de destino, y luego la carpeta que queremos comprimir ('data') zip -rq "$DEST_FILE" "data" if [ $? -eq 0 ]; then echo "La copia de seguridad comprimida se ha completado con éxito." exit 0 else echo "ERROR: Fallo al crear el archivo ZIP." exit 1 fi else echo "ERROR: El directorio de origen (${SOURCE_DIR}) no existe. Abortando." exit 1 fi