Zwischen Aufgabe Bash
Version vom 25. November 2025, 16:00 Uhr von Thomas.will (Diskussion | Beiträge)
Übungsaufgabe: Einfacher Webserver-Controller (webctl.sh)
- In dieser Aufgabe soll ein kleines Bash-Skript einen Python-Webserver starten, stoppen und überwachen.
- Dabei sollen grundlegende Kontrollstrukturen (case, if, for, while, until, break, continue, exit) verwendet werden.
Aufgabenstellung
- Erstellen Sie ein Skript webctl.sh mit folgenden Befehlen:
- start
- stop
- status
- help
Anforderungen
start
- Prüfen Sie mit if, ob python3 installiert ist, sonst exit 1.
- Starten Sie den Webserver mit: python3 -m http.server 8000 &
- Speichern Sie die PID in /tmp/web.pid.
- Verwenden Sie eine kleine for-Schleife (3 Versuche), die beim zweiten Versuch mit break abbricht.
stop
- Wenn die PID-Datei fehlt → Fehlermeldung und exit 2.
- Mit einer while-Schleife kill auf die PID ausführen, solange der Prozess noch läuft.
- Jeden zweiten Schleifendurchlauf mit continue überspringen.
- Wenn der Prozess beendet ist → PID-Datei löschen.
status
- Wenn PID-Datei vorhanden → prüfen, ob der Prozess läuft.
- Wenn ja: "läuft" ausgeben.
- Wenn nein: "nicht aktiv".
help
- Liste der Befehle anzeigen.
Zusatz
- Jeder Fehlerfall soll mit einem passenden exit-Code beendet werden.