Erfahrene Linux-Nutzer schwören auf flexible Kommandozeilentools, mit denen sie manche Aufgabe schneller bewältigen als in grafischen Programmen. Wir stellen interessante Anwendungen und Aufrufparameter vor, um auch Einsteiger zu einem Ausflug in die Shell zu ermutigen.
Tipp: Schneller ans Ziel dank Tab-Taste
Die Bash nimmt Ihnen jede Menge Tipparbeit ab, wenn Sie möchten. Die magische Taste ist die Tabulatortaste, die Befehle, Parameter und Dateinamen automatisch vervollständigt; das Feature heißt daher Tab-Completion. Geben Sie beispielsweise ls /etc/ap ein und drücken dann [Tab], ertönt ein Piepsen. Betätigen Sie die Tab-Taste noch einmal, zeigt die Bash mögliche Vervollständigungen für Datei- oder Ordnernamen, die mit /etc/ap beginnen (hier auf einem Ubuntu-System):
$ ls /etc/ap [Tab-Tab]
apg.conf apparmor/ apport/ apt/
apm/ apparmor.d/ appstream.conf aptdaemon/
Geben Sie nun ein t ein und drücken erneut [Tab], ist die Liste der Möglichkeiten bereits kürzer:
$ ls /etc/apt [Tab-Tab]
apt/ aptdaemon/
Wenn Sie als Nächstes ein d tippen und [Tab] drücken, ist die Eingabe eindeutig, und die Bash vervollständigt zu /etc/aptdaemon/.
Tipp: Befehlsparameter mit Tab-Taste anzeigen
Die Autovervollständigung funktioniert nicht nur mit Datei- und Verzeichnisnamen, sondern auch mit Shell-Befehlen. Als Beispiel dienen wieder ein Ubuntu-System und das Kommando apt-get zum Installieren, Aktualisieren oder Entfernen von Paketen. Geben Sie sudo apt-get, gefolgt von einem Leerzeichen ein. Drücken Sie dann zweimal [Tab], sehen Sie alle Kommandos, die das Tool kennt, also z. B. install und remove.
Es geht sogar noch weiter, denn apt-get kennt ja einige Parameter, die Sie beim Aufruf angeben können, z. B.
-fzum Reparieren beschädigter Abhängigkeiten,-sfür simulierte Durchläufe oder-y, was versucht, alle Abfragen mit “ja” zu beantworten.
Geben Sie also apt-get - ein und drücken zweimal [Tab], erscheinen im Terminal alle Parameter – jeweils in ihrer Kurz- und in ihrer Langfassung (Abbildung 1).

Abbildung 1: Die Tab-Completion berücksichtigt auch Parameter und Optionen. Ist die Liste der Möglichkeiten zu lang, fragt die Bash nach, ob Sie alle Treffer sehen möchten.
Im Fall des Paketverwaltungstools geht die Sache sogar noch einen Schritt weiter, wie Abbildung 1 zeigt. Wenn Sie hinter der Option install zweimal [Tab]+ betätigen, bietet die Bash an, alle Pakete anzuzeigen, die aktuell installiert werden können. Da die Liste sehr lang ist, fragt die Shell nach, ob Sie alle (im Beispiel) 57624 Möglichkeiten sehen möchten. Erst, wenn Sie hier [Y]+ oder [J] drücken, erscheinen alle Installationskandidaten. Das Ganze funktioniert genauso mit apt-get remove (Paket löschen) bzw. purge (was gleichzeitig die Konfigurationsdateien entfernt):
$ sudo apt-get remove [Tab-Tab] Display all 2022 possibilities? (y or n) n $ sudo apt-get purge [Tab-Tab] Display all 2022 possibilities? (y or n) n
Auf dem Testrechner kann das Paketverwaltungstool also insgesamt 2022 Pakete deinstallieren. Unter OpenSuse funktioniert das genauso; auch für das entsprechende Shell-Tool zypper kennt die Bash die Optionen und Parameter. Dass das möglich ist, liegt an einem Zusatzpaket namens bash-completion, das OpenSuse und Ubuntu standardmäßig einspielen: Dieses Paket enthält für zahlreiche Tools kleine Skripte, die in Aktion treten, wenn Sie nach Vervollständigungen suchen. Auf anderen Linux-Distributionen (oder Unix-Systemen), vor allem älteren Installationen, müssen Sie aber damit rechnen, dass die Bash diesen Trick nicht beherrscht.
Tipp: Das Piepsen der Bash abschalten
Wer oft und gerne mit der Tab-Completion arbeitet, ist vielleicht irgendwann vom Piepsen genervt, das bei mehreren Treffern ertönt. Um es abzuschalten, bearbeiten Sie die Datei .inputrc in Ihrem Home-Verzeichnis in einem Texteditor Ihrer Wahl, z. B. GEdit, KWrite, Vim oder Nano. In der Voreinstellung existiert diese Datei nicht. Wenn Sie sie neu erstellen, achten Sie darauf, dass der Dateiname mit einem Punkt beginnt. Tragen Sie folgenden Inhalt ein:
# Piepsen abschalten: set bell-style none
Die erste Zeile ist ein Kommentar, beginnt also mit einem Rautezeichen. Danach folgt die Anweisung für die Terminalglocke. Die Voreinstellung der Bash ist audible, das heißt, es piepst. Mit none deaktivieren Sie den Sound, und visible ersetzt das Piepsen durch ein kurzes Flackern. Die Änderung gilt für alle neuen Terminalfenster.
Tipp: Autovervollständigung nach einmal [Tab]
Mit einem weiteren Eintrag in der Datei ~/.inputrc (siehe vorheriger Tipp) verkürzen Sie das Arbeiten mit der Tab-Completion noch weiter. Die Variable show-all-if-ambiguous (deutsch: “zeige alle an, wenn die Eingabe mehrdeutig ist”) sorgt dafür, dass der einfache Druck auf [Tab] ausreicht, um alle Möglichkeiten sofort einzublenden. Bearbeiten Sie die Datei ~/.inputrc im Texteditor und fügen Sie die folgenden Zeilen hinzu:
# einmal Tab reicht zum Vervollständigen: set show-all-if-ambiguous on
In neuen Terminals ist das Feature aktiv. Falls die Ausgabe zu lang ist, fragt die Bash wieder nach, ob Sie alle Optionen sehen möchten.
Tipp: Manpages auf Deutsch lesen
Viele der Linux-Handbuchseiten sind aus dem Englischen ins Deutsche übersetzt worden. Bei Ubuntu finden Sie die deutschen Manpages im Paket manpages-de, bei OpenSuse in man-pages-de (im Packman-Repository). Es ist in der Voreinstellung nicht installiert; spielen Sie es also über den Paketmanager ein. Wenn Sie danach in einem Terminal das Kommando
man befehl
eingeben (wobei Sie befehl durch den Namen des Shell-Programms ersetzen), erscheint die Manpage bei richtig gesetzter Umgebungsvariable LANG auf Deutsch (Abbildung 2).

Abbildung 2: Einmal auf Deutsch, einmal im englischen Original: die Handbuchseite des Programms “ls” (hier unter Ubuntu 17.04).
Die aktuellen Spracheinstellungen Ihrer Arbeitsumgebung lesen Sie über das folgende Kommando aus:
$ echo $LANG
de_DE.UTF-8
Bei aktuellen Distributionen ist de_DE.UTF-8 die Regel, wenn Sie beim Installieren des Systems Deutsch als Standardsprache ausgewählt haben.
Tipp: Einzelne Manpages auf Englisch anzeigen
Bei OpenSuse zeigt der Paketmanager für man-pages-de in der Beschreibung die folgende Zusatzinformationen an:
Outdated (!) LDP Man-Pages (german)
Die deutschen Übersetzungen sind also als “veraltet” gekennzeichnet. Auch auf anderen Distributionen sind die Übersetzungen nicht immer auf dem aktuellsten Stand. Kommt Ihnen in einer Manpage etwas spanisch vor, können Sie über einen kleinen Trick die englische Handbuchseite betrachten. Setzen Sie dazu vorübergehend beim Aufruf der Manpage die Umgebungsvariable LANG auf die Standardlokalisierung C:
LANG=C man ls
Sobald Sie das Lesen der Manpage mit [Q] beendet haben, gilt wieder die ursprüngliche Einstellung (LANG=de_DE.UTF-8). Der Trick mit dem Vorschalten von LANG=C funktioniert auch bei vielen anderen Shell-Programmen, um darin die deutsche Lokalisierung abzuschalten; speziell bei man geht es noch kürzer: Auch
man -LC ls
schaltet auf die Standardsprache Englisch um, denn über -C können Sie für man die Lokalisierung festlegen, wie schon Aufrufe von man ohne Angabe der gesuchten Seite zeigen:
$ man Welche Handbuchseiten möchten Sie haben? $ man -LC What manual page do you want?
Tipp: Manpages im grafischen Programm lesen
Sowohl unter KDE Plasma als auch unter Gnome und Unity können Sie mit einem kleinen Trick die Handbuchseiten in einem grafischen Programm betrachten. Bei KDE Plasma eignet sich z. B. der Konqueror oder das KDE-Hilfezentrum. In ein Schnellstart- oder Terminalfenster geben Sie zuerst den Namen der ausführbaren Programmdatei für den Betrachter ein, also konqueror oder khelpcenter. Danach folgt man, ein Doppelpunkt und der Name der Manpage, also z. B.:
khelpcenter man:man
Nach einem Druck auf [Eingabe] startet der Betrachter (Abbildung 3).

Abbildung 3: Die Manpages können Sie auch in einem grafischen Programm lesen. Unter KDE Plasma übernehmen Konqueror oder das KDE-Hilfezentrum den Job.
Ähnlich funktioniert das Ganze unter Gnome und Unity: Auf beiden Desktopumgebungen ist yelp bzw. gnome-help (symbolischer Link auf /usr/bin/yelp) der installierte Hilfebrowser, der Programmhandbücher, Infoseiten und Manpages anzeigt. Der Aufruf im Terminal- oder Schnellstartfenster lautet entsprechend:
yelp man:ls
(diesmal für die Manpage zu ls). Anders als der Konqueror oder das KDE-Hilfezentrum, die beide alle verfügbaren Manpages (deutsch und englisch) auflisten, zeigt Yelp immer die deutsche Übersetzung an, falls diese installiert ist (siehe voriger Tipp). Möchten Sie unter Gnome oder Unity das englische Original lesen, können Sie wieder zum Trick mit der Umgebungsvariable greifen: Das Kommando LANG=C yelp man:ls zeigt das englische Original der ls-Manpage.
Tipp: Manpages als PDF-Dateien speichern
Der Befehl man hat einige interessante Parameter zu bieten. Über den Schalter -t beispielsweise erzeugen Sie ein PostScript-Dokument aus der Handbuchseite:
man -t ls > ls.ps
Beachten Sie, dass hier die Ausgabe von man mit dem Umleitungsoperator > in der Datei ls.ps gespeichert wird, weil sie sonst im Terminalfenster landet.
Mit dem kleinen Tool ps2pdf, das sowohl unter Ubuntu als auch unter OpenSuse automatisch installiert wird, wandeln Sie PostScript-Dateien ins PDF-Format um:
ps2pdf ls.ps
Jetzt liegen im aktuellen Verzeichnis zwei Dateien: ls.ps und ls.pdf. Sie können die beiden Arbeitsschritte zusammenfassen. Dazu speichern Sie die Ausgabe des man-Kommandos nicht erst als PostScript-Datei ab, sondern leiten sie über das Pipe-Zeichen ([AltGr]+[<], also |) direkt an das Programm ps2pdf weiter, das über - von der Standardeingabe liest und seine Ausgabe über den Operator > in die Datei ls.pdf schreibt (Abbildung 4).

Abbildung 4: Mit “man” können Sie Manpages ins PDF-Format umwandeln. Als zusätzlicher Helfer kommt das Tool “ps2pdf” zum Einsatz, das PostScript in PDF konvertiert.
Glossar
-
Umgebungsvariable
-
Diese Variablen enthalten Einstellungen für Programme, Pfade zu Anwendungen, zur Sprache der Arbeitsumgebung usw. Die Shell führt beim Start mehrere Skripte aus, in denen diese Variablen gesetzt werden. Einige systemweite Einstellungen finden Sie in /etc/profile, persönliche gehören in ~/.bashrc oder ~/.profile.
