Tricks für die Bash

Appetitliche Shell

Mit ein paar grundlegenden Kniffen bringen Sie Schwung und Farbe in die Arbeit auf der Kommandozeile.

Die Shell vermittelt zwischen dem Benutzer und dem Betriebssystem als Kommandozeileninterpreter: Sie wertet unter anderem Befehle, Platzhalter und Variablen aus, verknüpft Kommandos miteinander und leitet Programmausgaben an andere Tools oder in Dateien weiter. Neben der Bourne Shell (Sh), Korn Shell (Ksh), C Shell (Csh) und Z Shell (Zsh) spielt auf Unix-Systemen vor allem die Bourne Again Shell, kurz Bash, eine Rolle – sie hat sich als Standard unter Linux durchgesetzt. Das Arbeiten auf der Bash gestaltet sich wesentlich angenehmer, wenn man den Prompt an eigene Vorstellungen anpasst, die verschiedenen Tastaturkürzel kennt und den Funktionsumfang mit eigenen Alias-Definitionen und Umgebungsvariablen erweitert.

Auf Kommando!

Befehle geben Sie standardmäßig am Shell-Prompt ein. Eine typische Eingabeaufforderung sieht beispielsweise so aus:

huhn@huhnix:~>

Der Prompt verrät mehr zum Benutzernamen, zum Namen des Rechners, auf dem Sie arbeiten, und zum aktuellen Arbeitsverzeichnis (im Beispiel das Home-Verzeichnis des Benutzers, durch die Tilde repräsentiert). Wenn Sie als Systemverwalter arbeiten, sieht der Prompt anders aus – dass Sie Root sind, erkennen Sie auf den meisten Systemen durch das Rautezeichen (#) im Prompt:

huhnix:~ #

Den Prompt können Sie individuell anpassen: Datum und Uhrzeit, Uptime des Rechners oder verschiedene Farben – mit wenigen Handgriffen richten Sie Ihre Arbeitsumgebung selbst ein. Zuständig für das Aussehen ist die Umgebungsvariable PS1 (siehe auch Abschnitt "Alles variabel"). Wer beispielsweise die aktuelle Uhrzeit (im 24-Stunden-Format) vor dem Benutzer- und Rechnernamen sehen möchte, gefolgt vom aktuellen Arbeitsverzeichnis, der setzt die Variable temporär mit dem Befehl:

$ export PS1="[\t] \u@\h:\w> "
[19:11:06] huhn@huhnix:~>

Zum Einsatz kommen hier die Escape-Sequenzen \t (Uhrzeit im 24-Stunden-Format), \u (User-Name des aktuell angemeldeten Benutzers), \h (Hostname bis zum ersten Punkt) und \w (aktuelles Arbeitsverzeichnis). Mit speziellen Escape-Sequenzen lässt sich der Prompt auch farblich gestalten, etwa indem Sie einen normalen Benutzer-Prompt in Grün und den Prompt des Administrators in Rot anzeigen.

Eine Auflistung sämtlicher Escape-Sequenzen finden Sie in der Bash-Manpage; weiterhin lohnt sich ein Blick ins Bash-Prompt-Howto [1].

Ein gutes Gedächtnis

Die Bash hat ein gutes Gedächtnis: Alle Eingaben merkt sie sich in der so genannten History (Datei ~/.bash_history), so dass sich alte Kommandos schnell wieder auf den Schirm zaubern lassen. Drücken Sie [Pfeil oben], sehen Sie das zuletzte getippte Kommando auf dem Bildschirm. Wenn Sie die Taste mehrmals hintereinander drücken, wandern Sie weiter zurück, und [Pfeil unten] bringt Sie wieder nach vorne. Wieder zurückgeholte Befehle können Sie modifizieren und natürlich mit Druck auf die Eingabetaste erneut ausführen.

Das Gedächtnis der Bash ist allerdings nur so gut, wie in der Umgebungsvariable HISTSIZE definiert (siehe Abschnitt "Alles variabel"). Für wie viele Kommandos dort Platz ist, erfahren Sie ebenfalls auf der Shell:

$ echo $HISTSIZE
500

Sobald diese Grenze erreicht ist, verschwinden die ersten Befehle aus der Datei, um Platz für neue Eingaben zu machen. Damit Sie sich bei der Suche nach alten Kommandos nicht die Finger wundtippen müssen, bietet die Bash eine eingebaute Suchfunktion. Drücken Sie die Tastenkombination [Strg-R] bzw. [Strg-S] (siehe auch Tabelle "Tastenkürzel der Bash"), um die History rückwärts oder vorwärts gezielt nach Kommandos zu durchforsten. Der Prompt verändert sich; so zeigt [Strg-R] beispielsweise folgende Eingabeaufforderung an:

(reverse-i-search)`':

Hinter dem Doppelpunkt tippen Sie nun den gesuchten Befehl (oder einfach nur Teile des Kommandos) ein. Die Bash vervollständigt die Kommandos bereits während der Eingabe, so dass manchmal wenige Buchstaben ausreichen, um einen vergangene Befehl aufzuspüren. Um ein gefundenes Kommando auszuführen, drücken Sie die Eingabetaste. Alternativ suchen Sie durch wiederholten Druck auf [Strg]+[R] weiter, bis Sie den richtigen Befehl gefunden haben. Geben Sie [Esc] ein, um das gefundene Kommando vor dem Ausführen noch zu verändern.

Tastenkürzel der Bash

[Strg-A] Springt zurück an den Anfang der Eingabe.
[Strg-E] Springt ans Ende der Eingabe.
[Esc-B] Geht ein Wort zurück.
[Esc-F] Geht ein Wort vor.
[Strg-B] Springt ein Zeichen zurück.
[Strg-F] Springt ein Zeichen vor.
[Strg-K] Löscht von der Cursorposition bis zum Ende der Eingabe.
[Strg-U] Löscht von der Cursorposition bis zum Anfang der Zeile.
[Strg-W] Löscht das Wort links vom Cursor.
[Strg-T] Vertauscht die beiden Zeichen vor und unter dem Cursor.
[Esc-T] Vertauscht die beiden vorangehenden Wörter.
[Strg-L] Löscht den Inhalt des Terminal-Fensters.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Dr. Linux
    Komplizierte Organismen, wie Linuxsysteme es nun einmal sind, haben so ihre ganz eigenen Wehwehchen. Dr. Linux beobachtet die Patienten in den Linux-Newsgruppen, stellt an dieser Stelle Rezepte für aktuelle Probleme aus und alternative Heilmethoden vor.
  • Shell-Tipps
    Erfahrene Linux-Nutzer schwören auf flexible Kommandozeilentools, mit denen sich manche Aufgabe schneller bewältigen lässt als in grafischen Programmen. Wir stellen die wichtigsten Anwendungen vor, um auch Einsteiger zu einem Ausflug in die Shell zu ermutigen.
  • Bequem eingerichtet
    Mit Umgebungsvariablen richten Sie sich die Kommandozeile individuell und gemütlich ein.
  • Mit der Bash History Suggest Box Shell-Befehle schneller finden
    Mit den Pfeiltasten lässt sich der Bash-Verlauf schnell durchstöbern. Allerdings erweisen sich die Suchfunktionen der Bash als eng begrenzt. Hier springt die clevere Bash History Suggest Box in die Bresche.
  • Konfiguration der Bash
    Für viele Einsteiger ist die Shell ein Mysterium, das fortgeschrittenen Anwendern und Linux-Gurus vorbehalten bleibt. Dabei verbirgt sich hinter dem Prompt ein flexibles Programm, mit dem Anwender beinahe jede Aufgabe lösen können.
Kommentare

Infos zur Publikation

LU 10/2016: Kryptographie

Digitale Ausgabe: Preis € 0,00
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Soundkarte wird erkannt, aber kein Ton
H A, 25.09.2016 01:37, 3 Antworten
Hallo, Ich weiß, dass es zu diesem Thema sehr oft Fragen gestellt wurden. Aber da ich ein Linu...
Scannen nur schwarz-weiß möglich
Werner Hahn, 20.09.2016 13:21, 2 Antworten
Canon Pixma MG5450S, Dell Latitude E6510, Betriebssyteme Ubuntu 16.04 und Windows 7. Der Canon-D...
Meteorit NB-7 startet nicht
Thomas Helbig, 13.09.2016 02:03, 3 Antworten
Verehrte Community Ich habe vor Kurzem einen Netbook-Oldie geschenkt bekommen. Beim Start ersch...
windows bootloader bei instalation gelöscht
markus Schneider, 12.09.2016 23:03, 1 Antworten
Hallo alle zusammen, ich habe neben meinem Windows 10 ein SL 7.2 Linux installiert und musste...
Ubuntu 16 LTE installiert, neustart friert ein
Matthias Nagel, 10.09.2016 01:16, 3 Antworten
hallo und guten Abend, hab mich heute mal darangewagt, Ubuntu 16 LTE parallel zu installieren....