Aus EasyLinux 02/2016

Know-how für die Kommandozeile

Shell-Tipps

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: Was ist der Shell-Prompt?

Ein Terminalfenster oder eine der virtuellen Konsolen ([Strg]+[Alt]+[F1],[Strg]+[Alt]+[F2] usw.) nehmen Ihre Befehle am so genannten Shell-Prompt entgegen. Diese Eingabeaufforderung sieht je nach Distribution etwas anders aus. In der Regel zeigt der Standardprompt Ihren Benutzernamen, ein „@“-Zeichen, den Namen des Rechners (Hostname), einen Doppelpunkt und das aktuelle Verzeichnis. Unter Ubuntu sieht er beispielsweise so aus:

huhn@wily:~$

Der angemeldete Benutzer des Testrechners heißt huhn, der Rechner trägt den Namen wily. Die Tilde repräsentiert das Home-Verzeichnis, und hinter dem Dollarzeichen geben Sie nun ein Kommando ein. Wechseln Sie in einen anderen Ordner, ändert sich auch der Prompt:

huhn@wily:~$ cd /etc/apt/sources.list.d
huhn@wily:/etc/apt/sources.list.d$ cd
huhn@wily:~$
huhn@wily:~$ cd Downloads
huhn@wily:~/Downloads$

Das erste cd-Kommando („change directory“ = „wechsle das Verzeichnis“) bringt Sie in den Ordner /etc/apt/sources.list.d, das zweite (ohne Angabe eines Ordnernamens) zurück ins Home-Verzeichnis. Von da aus geht es ins Verzeichnis Downloads.

Auf den meisten Linux-Systemen verändert sich der Prompt, wenn Sie als Systemverwalter root arbeiten. Oft (aber nicht immer) verschwindet der Benutzername, und anstelle des Dollarzeichens $ sehen Sie nun ein Rautezeichen #:

huhn@wily:~$ sudo -i
[sudo] Passwort für huhn:
root@wily:~#

Das letzte Listing zeigt wieder den Ubuntu-Testrechner. Der Benutzer huhn erlangt über den Befehl sudo -i Administratorrechte. (Der Schalter -i sorgt dafür, dass die Arbeitsumgebung des Benutzers root aktiviert und ins Home-Verzeichnis von root gewechselt wird.)

Tipp: Das Aussehen des Prompts verändern

Verantwortlich für den Look des Shell-Prompts ist die UmgebungsvariablePS1. Wie diese definiert ist, erfahren Sie nicht nur durch einen Blick in die Bash-Konfigurationsdatei ~/.bashrc, sondern auch ganz flott auf der Kommandozeile selbst, dazu stellen Sie dem Variablennamen ein Dollarzeichen voran:

huhn@wily:~$ echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$

Das sieht auf den ersten Blick recht wüst aus – daher entschlüsseln wir das Ganze ein bisschen:

  • Hinter \e[ bzw. \033[ stehen Steueranweisungen für die so genannten ANSI-Farbcodes. Vor dem Semikolon ; steht ein Attribut, z. B. 00 für normale oder 01 für fette Schrift. Danach darf eine Farbe folgen, z. B. 32 für Grün oder 31 für Rot. \033[00m ist ebenfalls interessant: Damit schalten Sie zurück zu den Standardeinstellungen für den Text. (Tipp ## zeigt, wie Sie damit dem normalen Benutzer einen grünen Prompt und dem Administrator einen roten schenken.)
  • Dazu kommen Escape-Sequenzen wie \u (Benutzername), \h (Hostname) oder \w (zeigt den vollen Pfad an).

Ein paar Beispiele machen die Arbeit mit diesen Anweisungen etwas verständlicher. Zu Testzwecken modifizieren wir die $PS1-Variable temporär in der aktuellen Shell, so dass sie nur für die aktuelle Sitzung gilt. Tipp ## zeigt, wie Sie die Änderungen dauerhaft speichern.

Tipp: Pfad, Benutzer- und Hostname in den Prompt

Fangen wir mit einem einfachen Befehl an. Um den Benutzer- und Rechnernamen aus dem Prompt zu verbannen und einen einfachen Prompt mit einem Dollarzeichen zu setzen, definieren Sie mit Hilfe von export die Variable $PS1 so:

huhn@wily:~$ export PS1='$ '
$

Beachten Sie das Leerzeichen nach dem Dollarzeichen, das für etwas mehr Platz sorgt. Den Ausdruck haben wir in einfache Anführungszeichen eingeschlossen, was bei Leer- oder Sonderzeichen immer eine gute Idee ist.

Das Dollarzeichen ist ein bisschen dürftig – daher nehmen wir jetzt wieder den Benutzernamen und den Rechnernnamen (getrennt durch ein @-Zeichen) dazu:

$ export PS1='\u@\h$ '
huhn@wily$

Jetzt fehlt noch der Aufenthaltsort, den der Prompt in dieser Konfiguration verschweigt. Sie können dafür entweder \w oder \W verwenden. Der erstgenannte Ausdruck zeigt den vollen Pfad an (z. B. /etc/apt), der zweite nur den Namen des Verzeichnisses (z. B. apt). Diese Einstellung ist dann sinnvoll, wenn Sie auf einem System arbeiten, das viele lange Pfadnamen hat.

EasyLinux 02/2016 KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland

Hinterlasse einen Kommentar

  E-Mail Benachrichtigung  
Benachrichtige mich zu: