Skript um alle Minecraft Server zu löschen (delete_servers.sh)
#!/bin/bash
# Funktion zur Behandlung von Fehlern
handle_error() {
echo "Ein Fehler ist aufgetreten: $1" >&2
exit 1
}
# Funktion zur Prüfung des letzten Befehls auf Fehler
check_error() {
if [[ "$?" -ne 0 ]]; then
handle_error "Der vorherige Befehl war nicht erfolgreich."
fi
}
# Bestätigung vor dem Löschen
if ! whiptail --title "Bestätigung" --yesno "Möchten Sie wirklich alle Server löschen? Dieser Vorgang kann nicht rückgängig gemacht werden." 10 60; then
echo "Löschvorgang abgebrochen."
exit 0
fi
# Ladebildschirm starten für Serverlöschung
(
echo "10"; sleep 1
# Verzeichnisse löschen
server_dirs=$(ls -d /home/server_* 2>/dev/null)
if [ -z "$server_dirs" ]; then
echo "100"; sleep 1
whiptail --title "Fertig" --msgbox "Keine Server gefunden zum Löschen." 10 60
exit 0
fi
total_dirs=$(echo "$server_dirs" | wc -l)
current_dir=0
for dir in $server_dirs; do
rm -rf "$dir"
check_error
current_dir=$((current_dir + 1))
progress=$((current_dir * 100 / total_dirs))
echo $progress
done
echo "100"; sleep 1
) | whiptail --gauge "Server werden gelöscht..." 6 60 0
# Erfolgsmeldung
whiptail --title "Fertig" --msgbox "Alle Server wurden erfolgreich gelöscht." 10 60