Skript, mit dem der Benutzer eine Shell-Abmeldung abbrechen kann

Skript, mit dem der Benutzer eine Shell-Abmeldung abbrechen kann

Ich möchte ein Skript schreiben, um eine Nachricht anzuzeigen und möglicherweise eine Abmeldung von einer interaktiven Shell abzubrechen. Dies liegt daran, dass ich in einigen meiner Shells häufig Hintergrundjobs ausführe und mich spontan von allen abmelde und die laufenden Jobs schließe. Was ich suche, ist ein Skript wie:

# If there are running jobs
if [ -z "$(jobs)" ]; then
    # Display messages, give choices, etc.
    ...code...
    # And finally, given some conditions (e.g. answers to questions, etc.)
    cancel_logout
else
    logout

Vermutlich würde das oben Genannte in eingehen ~/.bash_logout.

Antwort1

Der richtige Weg hierfür besteht darin, die Prüfung von Bash selbst durchführen zu lassen.

shopt -s checkjobs

Dadurch zeigt Bash eine Meldung an, wenn noch Jobs ausgeführt werden. Wenn noch Jobs ausgeführt werden, müssen Sie zweimal versuchen, das Programm zu beenden, um es tatsächlich zu beenden.

verwandte Informationen