From 3e32af6954c0e5b353fcee7fb3125ec0a18ee305 Mon Sep 17 00:00:00 2001 From: Stefan Mewes Date: Mon, 19 May 2025 21:09:15 +0200 Subject: [PATCH] erste Grundversion --- borg_info_anzeigen.sh | 41 +++++++++++++++++++---------------------- 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/borg_info_anzeigen.sh b/borg_info_anzeigen.sh index 668d448..9d6ab1c 100755 --- a/borg_info_anzeigen.sh +++ b/borg_info_anzeigen.sh @@ -4,31 +4,34 @@ REPO="ssh://stefan@172.25.28.34:22/srv/usbplatte/nauheim1vps" clear -# Funktion, um Informationen anzuzeigen +# Frage die Passphrase einmal ab +PASSPHRASE=$(whiptail --passwordbox "Bitte gib die Passphrase für das Borgbackup-Repository ein:" 8 40 --title "Borg Backup" 3>&1 1>&2 2>&3) +export BORG_PASSPHRASE="$PASSPHRASE" + +# Funktion, um Informationen schön in Whiptail anzuzeigen function show_repo_info() { - echo "Repository-Informationen abrufen..." - borg info $REPO + INFO=$(borg info $REPO 2>&1) + whiptail --msgbox "Repository-Informationen:\n\n$INFO" 20 70 --title "Borg Backup" } function list_archives() { - echo "Verfügbare Archive im Repository:" - borg list $REPO + ARCHIVES=$(borg list $REPO 2>&1) + whiptail --msgbox "Verfügbare Archive:\n\n$ARCHIVES" 20 70 --title "Borg Backup" } function show_archive_details() { - echo "Details zu einem bestimmten Archiv:" - read -p "Gib den Namen des Archivs ein: " ARCHIVE - borg info $REPO::$ARCHIVE + ARCHIVE=$(whiptail --inputbox "Gib den Namen des Archivs ein:" 8 40 --title "Borg Backup" 3>&1 1>&2 2>&3) + INFO=$(borg info $REPO::$ARCHIVE 2>&1) + whiptail --msgbox "Details zu Archiv $ARCHIVE:\n\n$INFO" 20 70 --title "Borg Backup" } -# Hauptskript: Wiederhole das Menü, solange der Nutzer nicht "Beenden" wählt +# Hauptmenü mit Whiptail while true; do - echo "Was möchtest du tun?" - echo "1) Repository-Informationen anzeigen" - echo "2) Liste aller Archive anzeigen" - echo "3) Details zu einem bestimmten Archiv anzeigen" - echo "4) Beenden" - read -p "Wähle eine Option (1-4): " OPTION + OPTION=$(whiptail --title "Borg Backup Menü" --menu "Wähle eine Option" 15 50 4 \ + "1" "Repository-Informationen anzeigen" \ + "2" "Liste aller Archive anzeigen" \ + "3" "Details zu einem bestimmten Archiv anzeigen" \ + "4" "Beenden" 3>&1 1>&2 2>&3) case $OPTION in 1) @@ -41,14 +44,8 @@ while true; do show_archive_details ;; 4) - echo "Beende das Skript." + whiptail --msgbox "Beende das Skript." 8 40 --title "Borg Backup" exit 0 ;; - *) - echo "Ungültige Eingabe. Bitte wähle eine Option zwischen 1 und 4." - ;; esac - - # Warte kurz, bevor das Menü erneut angezeigt wird - echo "" done