Bash
Art der Muscheln
Suche…
Bemerkungen
Login-Shell
Eine Login-Shell ist eine, deren erstes Zeichen das Argument Null ist - oder eines, das mit der Option –login gestartet wurde. Die Initialisierung ist umfassender als in einer normalen interaktiven (Sub-) Shell.
Interaktive Shell
Eine interaktive Shell wird ohne Argumente ohne Option und ohne die Option -c gestartet, deren Standardeingabe und Fehler beide mit Terminals verbunden sind (wie von isatty (3) festgelegt), oder mit der Option -i gestartet. PS1 ist gesetzt und $ - beinhaltet i, wenn bash interaktiv ist, wodurch ein Shell-Skript oder eine Startdatei diesen Status testen kann.
nicht interaktive Shell
Eine nicht interaktive Shell ist eine Shell, in der der Benutzer nicht mit der Shell interagieren kann. Beispielsweise ist eine Shell, die ein Skript ausführt, immer eine nicht interaktive Shell. Trotzdem kann das Skript immer noch auf seine tty zugreifen.
Login-Shell konfigurieren
Beim Anmelden:
If '/etc/profile' exists, then source it.
If '~/.bash_profile' exists, then source it,
else if '~/.bash_login' exists, then source it,
else if '~/.profile' exists, then source it.
Für interaktive Shells ohne Login
Beim Start:
If `~/.bashrc' exists, then source it.
Für nicht interaktive Schalen
Beim Start: Wenn die Umgebungsvariable ENV nicht null ist, erweitern Sie die Variable und geben Sie die mit dem Wert benannte Datei an. Wenn Bash nicht im Posix-Modus gestartet wird, sucht es vor ENV nach BASH_ENV.
Einführung in Punktdateien
In Unix enthalten Dateien und Verzeichnisse, die mit einem Punkt beginnen, normalerweise Einstellungen für ein bestimmtes Programm / eine Reihe von Programmen. Dot-Dateien sind normalerweise für den Benutzer nicht ls -a
Sie müssen also ls -a
ausführen, um sie ls -a
.
Ein Beispiel für eine .bash_history
ist .bash_history
, die die zuletzt ausgeführten Befehle enthält, vorausgesetzt der Benutzer verwendet Bash.
Es gibt verschiedene Dateien, die beim Ablegen in die Bash-Shell bereitgestellt werden. Das Bild unten, entnommen aus dieser Seite zeigt den Entscheidungsprozess hinter der Entscheidung , welche beim Start Quelldateien.
Starten Sie eine interaktive Shell
bash
Ermitteln Sie den Shell-Typ
shopt -q login_shell && echo 'login' || echo 'not-login'