Login
Newsletter
Werbung

Mi, 11. April 2001, 00:00

Der Shell-Befehl alias

In der Bash (und natürlich den meisten anderen Shells) gibt es die Möglichkeit, einen Alias für beliebige Befehle zu vergeben. Dies bedeutet, dass man seinem System mitteilen kann, dass ein Befehl auch noch unter einem anderen Namen zu erreichen sein soll. Ein einfaches Beispiel ist ist der Befehl "cp" (kopieren von Dateien). Wem die Abkürzung zu kryptisch ist, der kann zum Beispiel einen Alias mit dem Namen copy erzeugen. Das Einrichten eines solchen Alias will ich am Beispiel des cp-Befehls veranschaulichen.

Beispiel: alias copy="cp"

Mit dem Befehl alias kann ein Alias erzeugt werden. Gefolgt vom Befehl ist das Kommando, welches zukünftig als Alias dienen soll. Anschließend kommt der Originalbefehl.

Die Verwendung von Aliasen kann auch dazu genutzt werden, lange Befehle in eine kürzere Form zu bringen. Beispiel ist hier der Befehl ls. Wer die Ausgabe der Verzeichnisstruktur zusätzlich formatieren möchte, ohne aber zusätzliche Tipparbeit leisten zu müssen, der kann hierzu auch einen Alias einrichten.

Beispiel: alias ls="ls -la --color=tty"

Durch einfaches Eintippen von alias auf der Konsole kann eine Übersicht aller vorhandenen Aliase ausgegeben werden. Mit dem Befehl unalias kann ein Alias wieder entfernt werden. Am Beispiel des Copy-Befehls wollen wir dies verdeutlichen.

Beispiel: unalias copy

Bei Aliasen sollte man beachten, dass diese auf jedem Linux-System verschieden sein können und sind. Wenn man sich seine persönlichen Aliase eingerichtet hat, so ist es wahrscheinlich, dass diese auf anderen Systemen nicht zur Verfügung stehen.

Außerdem sollte man mit Aliasen vorsichtig sein. Einige Systeme haben zum Beispiel auf den Befehl "rm" einen Alias gesetzt. Dieser Alias könnte wie folgt aussehen:

Beispiel: alias rm="rm -f"

Hier ist besondere Vorsicht geboten. Die Option -f des Befehls rm (löschen von Dateien) bewirkt, dass die Dateien ohne Nachfrage gelöscht werden.

Aliase sind benutzerabhängig. Dies bedeutet, dass jeder Benutzer für seinen Account beliebig viele Aliase anlegen kann. Andere Benutzer können von ihrem eigenen Account nicht auf diese Abkürzungen zugreifen. So kann jeder Benutzer seine individuellen Aliase einrichten. Außerdem kann ein Benutzer die Aliase des anderen Benutzers so nicht böswillig manipulieren.

Natürlich gibt es auch viele Situationen, in denen ein Alias wirklich praktisch ist. So muss man zum Mounten einer CD je nach System entweder mount /cdrom wie bei Debian (und seinen Derivaten, z.B. Storm Linux und Corel Linux) und SUSE oder mount /mnt/cdrom wie bei Red Hat (und seinen Derivaten, z.B. Mandrake) eingeben. Man erspart sich Tipparbeit und vereinheitlicht das Ganze durch folgende Aliase:

alias cdrom="mount /cdrom" alias ucdrom="umount /cdrom"

Der auszuführende Befehl der Aliase ist natürlich anzupassen, wenn der Mountpunkt an einer anderen Stelle liegt. Die meisten Distributionen definieren solche Aliase vorinstalliert in der Datei ~/.bashrc.

Gängige Aliase zum schnellen Navigieren durch Verzeichnisse sind:

alias ..="cd .."
alias ...="cd ../.."

Meist setzt man sich mehrere Aliase, die mit ls zu tun haben, etwa ll für ls -l oder la für ls -A. Wer sich ab und zu alle Verzeichnisse anzeigen lassen möchte und sich schon immer darüber geärgert hat, dass ls keine Option dazu hat, wird folgenden Alias mögen:

alias lsd="ls -d */"

ld können wir hier nicht verwenden, da es schon für ein anderes Programm (den Linker) vergeben ist.

Wenn man bestimmte Folgen von Befehlen häufig eingibt, macht es Sinn, sich dafür einen Alias einzurichten. Mehrere Befehle können in der Bash durch ein Semikolon voneinander getrennt in eine Zeile geschrieben werden.

Beispiel: alias cdmnt="mount /mnt/cdrom; cd /mnt/cdrom; ls"

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung