Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
alias definiert Kurznamen (Aliase) für Befehlsaufrufe. Alias ist als Shell-Builtin bei vielen Shells integriert, unter anderem bei der Bash, der Standard-Shell unter Ubuntu.
Die allgemeine Syntax lautet [1]:
alias Kurzname='Befehl'
Beispiel:
alias ll='ls -la'
Normalerweise wird nur das erste Wort jedes Befehls, den man im Terminal eingibt, für die Alias-Ersetzung überprüft. Wenn man beim Erzeugen eines Alias den neuen Befehl mit einem Leerzeichen beendet, wird allerdings auch das folgende Wort überprüft:
alias Kurzname='Befehl '
Bedingt durch den obigen Umstand funktionieren üblicherweise Aliase mit sudo nicht. Beispiel:
sudo ll /root/
sudo: ll: command not found
Dies kann man jedoch beheben, indem man für sudo
den folgenden Alias angibt:
alias sudo='sudo '
So wird auch ein auf sudo
folgender Alias (wie z.B. ll
) interpretiert.
Eingegebene Aliase sind flüchtig, d.h. diese stehen nach einem erneuten Aufruf der Konsole nicht mehr zur Verfügung. Es gibt allerdings zwei Möglichkeiten, diese dauerhaft zu definieren. Einmal durch Bearbeiten der Datei ~/.bashrc oder durch Anlegen der Datei ~/.bash_aliases.
Man öffnet die Datei ~/.bashrc mit einem Editor [2]. Unter dem Absatz Alias definitions
können dann die gewünschten Kurznamen eingetragen werden.
# Alias definitions. # You may want to put all your additions into a separate file like # ~/.bash_aliases, instead of adding them here directly. # See /usr/share/doc/bash-doc/examples in the bash-doc package. alias ll='ls -l' alias la='ls -la'
Anschließend speichert und schließt man die Datei.
Die zweite Möglichkeit ist, Aliase zentral in der Datei ~/.bash_aliases zu definieren. Der Vorteil dieser Möglichkeit liegt in der Übersichtlichkeit. Die Datei wird einfach mit einem Editor [2] erstellt und die Aliase werden zeilenweise eingetragen.
alias ll='ls -l' alias la='ls -al' alias ..='cd ..'
Anschließend wird die Datei gespeichert und geschlossen.
Damit die .bash_aliases auch eingelesen wird, muss die .bashrc unter Umständen geändert werden. Die folgenden Zeilen müssen darin enthalten sein und dürfen nicht auskommentiert sein:
if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
Damit die geänderten Einstellungen wirksam werden, muss die Konfigurationsdatei neu eingelesen werden:
source ~/.bashrc
Bei eigener Alias-Datei genügt es, diese einzulesen:
source ~/.bash_aliases
Es kann vorkommen, dass ein Alias den ursprünglichen Befehl "überschreibt" (z.B.: alias ls='ls -l'
). Will man das umgehen, kann man seinem Befehl einen \
oder command
voranstellen:
\BEFEHL
oder
command BEFEHL
Um einen Alias zurückzusetzen, dient der Befehl unalias
. Das folgende Beispiel bewirkt, dass der oben angegebene Alias für ll
nicht mehr gültig ist:
unalias ll
Um alle Alias-Definitionen aufzuheben, dient der Befehl
unalias -a
Übergibt den ls
-Befehl an less, so dass längere Ausgaben auf einer Seite gelesen werden können und dann weitergescrollt werden kann:
alias ll='ls | less'
Kodiert eine Linux-zeichenkodierte Datei (UTF8 und Linux-Zeilenumbrüche) in eine Windows-Datei um (Latin1 und Windows-Zeilenumbrüche) (hierfür muss recode installiert sein):
alias rclw='recode utf-8..CP1252/CR-LF'
Wie oben, nur Umkodierung von Windows nach Linux:
alias rcwl='recode CP1252/CR-LF..utf-8'
Kürzt den Befehl zum Installieren eines Programms (der Name muss natürlich noch zusätzlich angegeben werden) mit Hilfe von apt-get ab:
alias sagi='sudo apt-get install'
Ruft apt-get mit Root-Rechten auf, braucht noch einen folgenden Befehl (wie install
oder purge
oder ...):
alias sag='sudo apt-get'
Kann, kombiniert mit einem Suchbegriff, nach einem Paket suchen:
alias acs='apt-cache search'
Ein Beispiel für einen einfachen Ortswechsel im Verzeichnisbaum: mit dem Alias des
kann man von überall im Verzeichnisbaum direkt in der Shell in das Desktop-Verzeichnis springen:
alias des='cd ~/Desktop '
Die Ausgabe von ls nach Möglichkeit farbig dargestellt:
alias ls='ls --color=auto'
In das übergeordnete Verzeichnis wechseln:
alias ..='cd ..'
Zwei Verzeichnisse höher wechseln:
alias ...='cd ../..'
Diese Revision wurde am 18. August 2012 14:55 von Lasall erstellt.