snow-editor

small markdown and org-mode editor
Log | Files | Refs | README

backup-db.sh (533B)


      1 #!/usr/bin/env bash
      2 set -euo pipefail
      3 
      4 ROOT="$(cd "$(dirname "$0")/.." && pwd)"
      5 DB="${ROOT}/data/snow.db"
      6 BACKUP_DIR="${ROOT}/data/backups"
      7 
      8 if [[ ! -f "$DB" ]]; then
      9   echo "Database not found: $DB" >&2
     10   exit 1
     11 fi
     12 
     13 mkdir -p "$BACKUP_DIR"
     14 STAMP="$(date +%Y-%m-%d-%H%M%S)"
     15 DEST="${BACKUP_DIR}/snow-${STAMP}.db"
     16 
     17 if command -v sqlite3 >/dev/null 2>&1; then
     18   sqlite3 "$DB" ".backup '${DEST}'"
     19 else
     20   echo "sqlite3 not found — copying file (stop the backend first for a safe copy)."
     21   cp "$DB" "$DEST"
     22 fi
     23 
     24 echo "Backup saved: $DEST"