Cleanup mit trap
Wenn ein Shell-Skript durch Ctrl+C, kill oder einen Fehler beendet wird, bleiben ohne Signal-Handling Lockfiles, temporäre Dateien und halbfertige Datenbankoperationen zurück. Das Bash-Builtin trap registriert Handler für SIGINT, SIGTERM, SIGPIPE, ERR und EXIT — und macht Cleanup zu einem zuverlässigen, geordneten Prozess.
Inhaltsverzeichnis
- 1. Signale in Linux und die Rolle von trap
- 2. trap EXIT und trap ERR — das Fundament
- 3. SIGINT und SIGTERM: Benutzerabbruch und kill
- 4. SIGPIPE: stille Kills in Pipes
- 5. Cleanup-Reihenfolge richtig strukturieren
- 6. Subshells und Hintergrundprozesse: Signale weiterleiten
- 7. trap in Funktionen und Libraries
- 8. Praktisches Beispiel: robustes Deployment-Skript
- 9. Signal-Vergleich: Verhalten und Empfehlung
- 10. Zusammenfassung
- 11. FAQ
1. Signale in Linux und die Rolle von trap
Signale sind