Appetitliche Shell
Tricks für die Bash
Zusammenhängend, bitte!
Mit den gezeigten Funktionen finden Sie zwar Befehle wieder, diese erscheinen dann jedoch ziemlich aus dem Zusammenhang gerissen. Um komplexere Abläufe zurück auf den Schirm zu holen, können Sie einerseits die History-Datei (~/.bash_history) betrachten oder das Shell-Builtin fc ("Fix Command") zur Hilfe nehmen. Zusammen mit dem Parameter -l gibt das Programm standardmäßig die letzten 17 Befehle nummeriert aus. Hängen Sie weiterhin eine Ziffer an, um noch genauer anzugeben, wie groß der Bereich sein soll. So zeigt das Kommando fc -l -5 die letzten fünf Befehle an.
Eine Alternative zum Protokollieren auf der Shell bietet das Programm script: Starten Sie eine längere Session beispielsweise mit dem Befehl script MeinProtokoll
, um alle nun folgenden Kommandos und ihre Ausgabe aufzuzeichnen. Sie beenden den praktischen Schriftführer durch Eingabe von [Strg]+[D].
Konfigurationsdateien der Bash
Die Bash bringt gleich mehrere Startdateien mit, die das Verhalten der Shell (und anderer Programme) beeinflussen. Als wäre das Chaos damit nicht schon perfekt, kochen die Distributoren oft noch ihr eigenes Süppchen und setzen unterschiedliche Prioritäten bei den Konfigurationsdateien respektive verweisen in diesen auf andere Dateien.
Wenn Sie sich auf einer virtuellen Konsole oder über SSH anmelden, starten Sie eine so genannte Login-Shell – in der Prozessliste erscheint sie mit vorangestelltem Minuszeichen:
$ ps auxwww | grep bash huhnix 3778 0.0 0.3 3056↩ 1652 tty1 Ss+ May28 0:00↩ -bash huhnix 4193 0.0 0.3 3068↩ 1672 pts/1 Ss May28 0:00↩ /bin/bash
Diese Login-Shell schaut zunächst im Home-Verzeichnis des Benutzers nach der Datei ~/.bash_profile. Fehlt diese, sucht die Bash nach der Datei ~/.bash_login, andernfalls nach /etc/profile bzw. nach ~/.profile.
Daneben gibt es so genannte interaktive Shells – etwa solche, die Sie aus einer anderen Shell heraus starten. Dazu gehören auch Xterms oder andere Konsolenprogramme unter der grafischen Benutzeroberfläche. Anweisungen für diese Shells stehen in der privaten ~/.bashrc oder der systemweiten Datei /etc/bash.bashrc. Hier tragen Sie auch die in den folgenden Abschnitten gezeigten Alias-Definitionen und Umgebungsvariablen ein.
Jedes mal, wenn Sie die eigene ~/.bashrc angepasst haben, starten Sie entweder eine neue Shell oder führen das Skript source ~/.bashrc aus, um die Änderungen einzulesen. Den Befehl können Sie abkürzen, wenn Sie ~/.bashrc eingeben.



