So fangen Sie das Austritt 1 Signal in Shell-Skript ein?
Frage
Ich möchte das Einfangen von Signal 1 versuchen, fehlgeschlagen
generasacodicetagpre.Auch wenn es Exit 1 ist, fängt es immer in Trap 0 ein, weiß jemand, wie man das lösen soll?
danke
Lösung
exit 1
schickt keinen seufz.Es verlässt mit dem Rückkehrcode (AKA EXIT STATUS) 1. Zum Senden eines SighUp-Verwendens generasAndicetagcode:
kill
ist die ID des aktuellen Prozesses.So sendet der $$
das Signal 1 (SIGHUP) an den aktuellen Prozess.Die Ausgabe des obigen Skripts lautet:
So überprüfen Sie den Rückkehrcode an der Exit
Wenn das Ziel darin besteht, den Rückkehrcode zu überprüfen (auch als Exit-Status bezeichnet), anstatt spezielle Signale zu fangen, dann müssen wir nur auf den Statusvariablen generationspoLDICETAGCODE bei Exit prüfen:
generasacodicetagpre.Wenn Sie bei der Befehlszeile ausgeführt werden, erzeugt dies:
generasacodicetagpre.Beachten Sie, dass die Trap-Anweisung eine Bash-Funktion aufrufen kann, die willkürlich komplizierte Anweisungen einschließen kann, um unterschiedliche Rendite-Codes unterschiedlich zu verarbeiten.