Könnte jemand bitte erklären, wie der exit
Befehl funktioniert im Unix-Terminal?
Eine Suche nach man exit
und which exit
war nicht hilfreich und ich bin auf folgendes Problem gestoßen.
Nachdem ich Add-On-Pakete für Anaconda und PyCharm auf meinem neuen Red Hat-System installiert hatte, bemerkte ich das, wann immer ich exit
aufrief Um eine Terminalsitzung zu beenden, würde ich eine Reihe von Fehlern erhalten, und dann wird das Terminal wie erwartet beendet. Die Fehler scheinen darauf hinzudeuten, dass mein Aufruf exit
ist löst einen Aufruf rm ~/anaconda3/.../
aus und rm ~/PyCharm/....
, verursacht einen Fehler. Alle Verzeichnisse scheinen auch die Speicherorte von Paketen zu sein, die ich für diese Programme heruntergeladen habe (z. B. numpy), siehe unten.
$ exit
rm: cannot remove ‘~/anaconda3/lib/python3.5/site-packages/numpy/core’: Is a directory
...
...
Gelöst
In meinem ~/.bash_logout
Datei gab es eine Zeile
find ~ -xdev ( -name *~ -o -name .*~ -o -name core ) -exec \rm '{}' \;
Das Auskommentieren dieser Zeile beendete die Fehlermeldungen. Es scheint alle temporären Dateien zu suchen und zu löschen. Aber es versucht auch, Verzeichnisse mit dem Wort „Kern“ darin zu finden und diese ebenfalls zu löschen. Dies war eine Voreinstellung im System.
Akzeptierte Antwort:
Nun, normalerweise würden Sie die Ausführung nur beim Beenden einer Shell sehen, wenn Sie dies manuell konfiguriert haben. Aber vielleicht kam eines der Pakete, die Sie installiert haben, mit einem Bash-Exit-Shell-Skript …
prüfen;
~/.bash_logout
Vielleicht finden Sie dort einen Skriptaufruf, es ist ein seltsamer …