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.
Tipp: Zeichenchaos im Terminal aufräumen
Das Programm cat gibt nicht nur Dateien auf der Standardausgabe aus, sondern hilft auch dabei, mehrere Files “aneinanderzukleben” (englisch “to concatenate”). Der Befehl
cat /etc/resolv.conf
schickt den Inhalt der Datei auf den Bildschirm – praktisch, um kurze Textdateien anzuschauen, ohne den Umweg über einen Texteditor gehen zu müssen. Ein unvorsichtiges cat auf eine binäre Datei sorgt allerdings für Zeichensalat im Terminal (Abbildung 1). Auch das Kommando clear (Tastaturkürzel [Strg]+[L]) räumt das Terminal nicht auf; es bleibt bei wirren Sonderzeichen. Bevor Sie das Handtuch werfen und das Terminalprogramm schließen, versuchen Sie es mit dem Befehl reset. Diesen geben Sie “blind” am Prompt ein und schicken ihn mit der Eingabetaste ab. In der Regel erscheint danach wieder der vertraute Prompt, und Sie können weiterarbeiten.

Abbildung 1: Das Programm “cat” eignet sich prima dazu, Textdateien anzuzeigen, schreibt allerdings nur Zeichensalat ins Terminal, wenn Sie ein ausführbares Programm erwischen.
Tipp: Abkürzungen für die Bash
Manche Benutzer haben keinerlei Schwierigkeiten, sich auch komplizierteste Befehle zu merken, oder sie haben sogar sämtliche Aufrufparameter ihrer Lieblingskommandos im Kopf. Wer lange Shell-Befehle nicht behalten kann oder will, greift zur Bash-eigenen Notizbuchfunktion alias und erstellt Abkürzungen für häufig benötigte Kommandos und eventuelle Optionen. Wenn Sie einfach nur alias am Prompt tippen, sehen Sie eine Übersicht der vorhandenen Abkürzungen:
$ alias alias ls='ls --color=auto' alias xterm='xterm -bg black -fg white &'
Den ersten Alias finden Sie auf vielen Linux-Distributionen. Das Kommando ls, das Verzeichnisse und Dateien auf der Shell auflistet, ist hier so definiert, dass der einfache Aufruf von ls die Ausgabe automatisch einfärbt. Der zweite Alias im Beispiel ist eine Eigenkonstruktion und sorgt dafür, dass beim Aufruf von xterm das Terminal mit weißer Schrift (-fg white) auf schwarzem Hintergrund (-bg black) gestartet wird.
Einen neuen Alias erstellen Sie mit dem gleichnamigen Kommando alias, gefolgt vom Namen für den Shortcut, einem Gleichheitszeichen und dem vollständigen Befehlsaufruf. Befinden sich in diesem Leer- oder Sonderzeichen, schließen Sie ihn in Anführungszeichen ein. Wer beispielsweise die tar-Optionen zum Auspacken eines mit gzip komprimierten Archivs [1] nicht immer wieder eingeben möchte, kann einen Alias namens unpack dafür einrichten:
alias unpack='tar xvfz'
Der neue Alias ist sofort aktiv – allerdings nur in dieser einen Shell-Sitzung. Öffnen Sie ein weiteres Terminalfenster oder wechseln Sie auf eine andere Konsole, wissen diese nichts von dem Alias. Um ihn dauerhaft für alle Shells zur Verfügung zu stellen, tragen Sie die entsprechende Zeile daher in die Bash-Konfigurationsdatei .bashrc im eigenen Home-Verzeichnis ein:
- Öffnen Sie die Konfigurationsdatei mit einem Texteditor Ihrer Wahl, zum Beispiel über den Schnellstarter [Alt]+[F2] und Eingabe von gedit ~/.bashrc oder kate ~/.bashrc.
-
Suchen Sie nach dem Begriff alias. Ihre eigenen Abkürzungen können Sie direkt hinter den Vorgaben des Distributors platzieren. Jede alias-Definition steht dabei in einer eigenen Zeile:
alias unpack='tar xvfz' alias pack='tar cfvz'
-
Um die eigenen Einträge von den Voreinstellungen zu unterscheiden, können Sie den alias-Definitionen einen Kommentar voranstellen. Diese Zeile beginnt mit einem Rautezeichen, zum Beispiel:
# meine eigenen "alias"-Einträge:
-
Speichern Sie die Änderungen und schließen Sie den Texteditor. Neu gestartete Shell-Sitzungen kennen die neuen Abkürzungen. Mit einem Trick machen Sie diese auch mit einer laufenden Bash bekannt. Dazu tippen Sie im Terminalfenster:
source ~/.bashrc
Dass die Shell die neuen Definitionen kennt, verrät die Eingabe des Kommandos alias ohne weitere Optionen. Nun sind die Abkürzungen einsatzbereit:
$ pack test.tgz *.png bild1.png bild2.png bild3.png …
Tipp: Alias-Definitionen wieder loswerden
Passend zum Kommando alias steht der Befehl unalias zur Verfügung, der – wie der Name vermuten lässt – einen Alias deaktiviert. Als weitere Angabe benennen Sie den Alias, den Sie abschalten möchten, zum Beispiel:
unalias ls
Danach kennt die laufende Shell-Sitzung die Farbdefinitionen für ls nicht mehr. Um alle Abkürzungen auf einen Rutsch loszuwerden, geben Sie
unalias -a
ein. Auch hier gilt wieder: Alle Änderungen gelten nur für die laufende Bash. Um das Verhalten dauerhaft zu machen, bearbeiten Sie wiederum die Datei .bashrc in Ihrem Home-Verzeichnis. Starten Sie, wie im vorherigen Tipp gezeigt, einen Texteditor und navigieren zu den alias-Einträgen. Entweder löschen Sie die entsprechenden Zeilen oder stellen ein Rautezeichen davor und kommentieren sie damit aus. Das hat den Vorteil, dass Sie die Abkürzungen zu einem späteren Zeitpunkt schnell wieder aktivieren können, indem Sie das Kommentarzeichen # löschen. Nach dem Speichern der Konfigurationsdatei sind die Änderungen wiederum erst für neue Shell-Sitzungen aktiv. Alternativ informieren Sie eine laufende Bash über source ~/.bashrc.
Tipp: Hilfe für Shell-Programme
Die meisten Kommandozeilentools bringen eine eigene Onlinehilfe mit, die Sie auch auf der Shell abrufen können. Wer das Paket manpages-de (Ubuntu, Universe-Repository) beziehungsweise man-pages-de (OpenSuse, auf den normalen Installationsmedien dabei) installiert, kann viele der Handbuchseiten sogar auf Deutsch lesen.
Um eine Manpage zu lesen, geben Sie man gefolgt vom Programmnamen im Terminal ein, zum Beispiel:
man tar
Sowohl die englischen Originale als auch die deutschen Manpages folgen einer bestimmten Struktur: NAME zeigt eine Kurzbeschreibung des Programms, SYNOPSIS (SYNTAX) listet die möglichen Aufrufparameter auf, und DESCRIPTION (BESCHREIBUNG) erklärt mehr oder weniger ausführlich den Zweck des Tools. Danach geht’s ins Detail: Neben einer vollständigen Liste der Aufrufparameter bieten manche Manpages auch Beispiele, mögliche Bugs und Hinweise auf verwandte Programme und Dateien (Abschnitt SEE ALSO bzw. SIEHE AUCH). Innerhalb der Handbuchseiten blättern Sie mit den Cursor- oder Pfeiltasten, über / und ? durchsuchen Sie die Hilfe vorwärts und rückwärts, und mit [Q] beenden Sie das Programm.
Tipp: Nach passenden Manpages suchen
Oft ist guter Rat teuer, wenn Sie nach einem Befehl suchen, den korrekten Programmnamen aber nicht kennen. Das Tool man bietet einen Aufrufparameter, der beim Stöbern hilft. Geben Sie man -k und den Suchbegriff ein, um alle Kommandos aufzulisten, in deren Kurzbeschreibungen (also jeweils im Abschnitt NAME) der Begriff auftaucht. Deutsche Suchbegriffe funktionieren hier also nur, wenn es eine deutsche Übersetzung der Manpage gibt; daher fahren Sie in der Regel mit einem englischen Suchwort besser (Abbildung 2).
Tipp: Englische Original-Manpages betrachten
Sofern Sie für Ihre Distribution das deutsche Sprachpaket für die Manpages installiert haben (siehe Tipp ##) und das System auch die deutschen Spracheinstellungen verwendet, präsentiert man standardmäßig die deutschen Übersetzungen der Handbuchseiten. Wer gerne zwischendurch einen Blick auf die englischen Originale (etwa zu Vergleichszwecken) wirft, erreicht diese über den Schalter -L. Der Parameter erwartet als zusätzliche Angabe die so genannte Locale. Für die englischen Manpages wählen Sie beispielsweise:
man -L C man
C ist dabei die Standard-Locale ohne nationale Anpassungen, also Englisch.
Tipp: Manpages in anderen Sprachen betrachten
Die Handbuchseiten sind nicht nur ins Deutsche, sondern auch in viele andere Sprachen übertragen worden. Wenn Sie im Paketmanager Ihrer Distribution nach manpages suchen, sehen Sie alle verfügbaren Übersetzungen. Wer beispielsweise die spanische Onlinehilfe eingespielt hat, schaut diese über
man -L es man
an. Wie die Ländercodes im Einzelnen heißen, verrät ein Blick ins Verzeichnis /usr/share/locale/; das Kommando locale -a gibt eine Liste aller Locales aus.
Glossar
-
Locale
-
Eine Sammlung von Parametern für ein Gebietsschema, neben der Sprache auch weitere Einstellungen, etwa zur Standardwährung – so gibt es z. B. eine britisch-englische und eine amerikanisch-englische Locale und im deutschsprachigen Raum verschiedene Locales für Deutschland, Österreich, die Schweiz, Belgien und Luxemburg.
[1] Artikel über Archivierung auf der Shell: Heike Jurzik, “Komprimierungskünstler”, EasyLinux 07/2004, S. 84 ff., http://www.easylinux.de/2004/07/084-guru-tar


