#!/usr/bin/env bash set -Eeuo pipefail SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)" cd "$SCRIPT_DIR" run_script() { local script="$1" local needs_sudo="${2:-no}" if [[ ! -f "$SCRIPT_DIR/$script" ]]; then echo "FEHLT: $script" return 1 fi if [[ ! -x "$SCRIPT_DIR/$script" ]]; then echo "Nicht ausführbar: $script -> chmod +x $script" return 1 fi echo "----> Starte: $script" if [[ "$needs_sudo" == "sudo" ]]; then sudo "$SCRIPT_DIR/$script" else "$SCRIPT_DIR/$script" fi } while true; do echo echo "== Backup Menü ==" echo "1) Setup" echo "2) SSH Setup (sudo)" echo "3) Verify (sudo)" echo "4) Backup Run (sudo)" echo "5) Status" echo "6) Logs" echo "7) Timer enable (sudo)" echo "8) Timer disable (sudo)" echo "9) Uninstall" echo "0) Ende" echo read -r -p "Auswahl: " choice echo case "$choice" in 1) run_script "01_setup.sh" ;; 2) run_script "02_setup_ssh.sh" sudo ;; 3) run_script "03_verify.sh" sudo ;; 4) run_script "04_run_backup.sh" sudo ;; 5) run_script "05_status.sh" ;; 6) run_script "06_logs.sh" ;; 7) run_script "07_timer_enable.sh" sudo ;; 8) run_script "08_timer_disable.sh" sudo ;; 9) run_script "09_uninstall.sh" ;; 0) exit 0 ;; *) echo "Ungültig." ;; esac done