Aufgaben Bash trap
Version vom 8. Juni 2023, 11:24 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „*Erstelle ein Skript, das bei einem SIGINT-Signal (Strg+C) "Signal SIGINT empfangen. Beende das Skript." ausgibt und das Skript beendet. <!-- #!/bin/bash # Tr…“)
- Erstelle ein Skript, das bei einem SIGINT-Signal (Strg+C) "Signal SIGINT empfangen. Beende das Skript." ausgibt und das Skript beendet.
- Schreibe ein Skript, das beim Erhalt eines SIGHUP-Signals (Terminal schließen) eine Funktion aufruft die ausgibt ""Terminal wurde geschlossen. Räume auf..."
- Verwende trap zum Abfangen von Fehlerzuständen (Exit-Code ungleich 0) und führe eine spezifische Aktion aus:
bash Copy code
- !/bin/bash
- Trap-Funktion für EXIT
trap 'error_handler' EXIT
- Funktion für Fehlerbehandlung
error_handler() {
if [ $? -ne 0 ]; then
echo "Ein Fehler ist aufgetreten. Exit-Code: $?"
# Weitere Fehlerbehandlung hier
fi
} -->
- Skriptcode
echo "Skript läuft..."
- Ein Befehl, der möglicherweise fehlschlagen kann
ls /pfad/der/nicht/existiert
- Weitere Skriptoperationen...
Schreibe ein Skript, das bestimmte Signale ignoriert: bash Copy code
- !/bin/bash
- Trap-Funktion für SIGTERM und SIGQUIT (ignoriert Signale)
trap SIGTERM SIGQUIT
- Skriptcode
echo "Skript läuft..."
- Endlosschleife zum Testen
while true; do
sleep 1
done Verwende trap zum Aufrufen einer Funktion vor dem Beenden des Skripts, unabhängig davon, ob es erfolgreich abgeschlossen wurde oder nicht: bash Copy code
- !/bin/bash
- Trap-Funktion für EXIT
trap 'cleanup' EXIT
- Funktion für das Aufräumen
cleanup() {
echo "Skript wird beendet. Führe Aufräumarbeiten durch..." # Weitere Aufräumarbeiten hier
}
- Skriptcode
echo "Skript läuft..."
- Weitere Skriptoperationen...