Könnte jemand erklären, wie der exitBefehl im Unix-Terminal funktioniert?
Eine Suche nach man exit und which exitwar nicht hilfreich und ich bin auf das folgende Problem gestoßen.
Nach der Installation von Add-On-Paketen für Anaconda und PyCharm auf meinem neuen Red Hat-System stellte ich fest, dass beim exitVerlassen einer Terminalsitzung immer eine Reihe von Fehlern auftrat und das Terminal wie erwartet beendet wurde. Die Fehler scheinen darauf hinzudeuten, dass mein Anruf bei exiteinen Anruf auslöst rm ~/anaconda3/.../und rm ~/PyCharm/....einen Fehler verursacht. Alle Verzeichnisse scheinen auch die Speicherorte der Pakete zu sein, die ich für diese Programme heruntergeladen habe (dh numpy), siehe unten.
$ exit
rm: cannot remove ‘~/anaconda3/lib/python3.5/site-packages/numpy/core’: Is a directory
...
...
Behoben
In meiner ~/.bash_logoutAkte gab es eine Zeile
find ~ -xdev ( -name *~ -o -name .*~ -o -name core ) -exec \rm '{}' \;
Das Kommentieren dieser Zeile hat die Fehlermeldungen gestoppt. Es scheint, alle temporären Dateien zu suchen und zu löschen. Es wird jedoch auch versucht, Verzeichnisse mit dem Wort "core" zu finden und diese ebenfalls zu löschen. Dies war eine Voreinstellung im System.
exites sich um einen Alias handelt?
coreDateien zu löschen , ist, dass es sich normalerweise um Crash-Dump-Dateien ( Core-Dumps ) handelt, die Speicherplatz belegen, aber nur dann nützlich sind, wenn Sie die Crash-Software entwickeln. In diesem Fall wird versucht, ein Verzeichnis mit dem Namen zu löschen core, was fehlschlägt (und gut, dass dies fehlschlägt - numpy.coreist für NumPy von entscheidender Bedeutung!).
ulimit -c 0standardmäßig keine Core-Dumps geschrieben werden ( Standardeinstellung). Diesen find -exec rmBefehl möchte ich sowieso nicht, aber Sie könnten ihn ergänzen -type f. Sie können das Löschen mehrerer Dateien auch effizienter gestalten, indem Sie -exec rm {} +anstelle von ... \;mehrere Argumente in einer rmBefehlszeile stapeln (z. B. xargs)
exitvon auszutreten dieser Terminalsitzung - oder dass das passiert jedes Mal , die Sie verwendenexitdanach?