Bash-Aliase sind Abkürzungen für Befehle. Statt einen langen Befehl wie tar -xvfz einzutippen, definierst du einen kurzen Alias wie tgz und sparst dir Tipparbeit.

Syntax

Die allgemeine Syntax für einen Alias lautet:

alias NAME="BEFEHL"
  • NAME - Der Name deines Alias (die Abkürzung).
  • BEFEHL - Der vollständige Befehl, der ausgeführt werden soll.

Der Befehl muss in Anführungszeichen stehen. Zwischen dem Gleichheitszeichen und den Anführungszeichen darf kein Leerzeichen sein.

Einen einfachen Alias erstellen

Ein häufig verwendeter Alias ist ll für ls -la. So erstellst du ihn:

alias ll="ls -la"

Nach der Eingabe kannst du ll verwenden und erhältst die gleiche Ausgabe wie bei ls -la.

Dieser Alias existiert nur für die aktuelle Shell-Sitzung. Sobald du das Terminal schließt, ist er verschwunden.

Aliase dauerhaft speichern

Um Aliase dauerhaft zu machen, fügst du sie in die Datei ~/.bashrc ein. Öffne die Datei mit einem Texteditor:

nano ~/.bashrc

Füge deine Aliase am Ende der Datei hinzu:

# Aliase
alias ll="ls -la"
alias myip="curl ipinfo.io/ip"
alias update="sudo apt update && sudo apt upgrade"

Speichere die Datei und lade sie neu:

source ~/.bashrc

Die Aliase stehen jetzt in jeder neuen Shell-Sitzung zur Verfügung.

Aliase in einer eigenen Datei verwalten

Bei vielen Aliasen lohnt es sich, diese in einer separaten Datei zu organisieren. Manche Distributionen wie Ubuntu nutzen dafür die Datei ~/.bash_aliases.

Erstelle die Datei und füge deine Aliase hinzu:

nano ~/.bash_aliases

Die ~/.bashrc lädt diese Datei automatisch, sofern sie existiert. Falls nicht, füge folgende Zeilen in die ~/.bashrc ein:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

Aliase mit Argumenten: Bash-Funktionen

Normale Aliase akzeptieren keine Argumente. Wenn du einen Alias mit variablen Werten brauchst, verwendest du stattdessen eine Bash-Funktion.

Die Syntax für eine Funktion:

funktionsname() {
    BEFEHLE
}

Beispiel: Verzeichnis erstellen und wechseln

Diese Funktion erstellt ein Verzeichnis und wechselt direkt hinein:

mkcd() {
    mkdir -p -- "$1"
    cd -P -- "$1"
}

Füge die Funktion in die ~/.bashrc ein und lade sie mit source ~/.bashrc neu.

Jetzt kannst du ein neues Verzeichnis erstellen und sofort hineinwechseln:

mkcd projekte/neues-projekt

Parameter in Funktionen

Die übergebenen Argumente sind über $1, $2, $3 usw. erreichbar. $1 ist das erste Argument, $2 das zweite und so weiter.

Im obigen Beispiel steht $1 für den Verzeichnisnamen, den du beim Aufruf angibst.

Die Option -- verhindert, dass Verzeichnisnamen mit Bindestrich am Anfang als Befehlsoption interpretiert werden. Die Option -P bei cd löst symbolische Links auf und wechselt in das echte Verzeichnis.

Nützliche Alias-Beispiele

Hier sind einige praktische Aliase für den Alltag:

# Navigation
alias ..="cd .."
alias ...="cd ../.."

# Sicherheitsabfrage vor dem Löschen
alias rm="rm -i"
alias mv="mv -i"
alias cp="cp -i"

# Farbige Ausgabe
alias grep="grep --color=auto"
alias ls="ls --color=auto"

# Systemverwaltung (Debian/Ubuntu)
alias update="sudo apt update && sudo apt upgrade"
alias install="sudo apt install"

Bestehende Aliase anzeigen

Um alle definierten Aliase aufzulisten, gibst du alias ohne Argumente ein:

alias

Ein einzelner Alias lässt sich mit seinem Namen abfragen:

alias ll

Einen Alias entfernen

Mit unalias entfernst du einen Alias für die aktuelle Sitzung:

unalias ll

Um einen Alias dauerhaft zu entfernen, löschst du die entsprechende Zeile aus der ~/.bashrc oder ~/.bash_aliases.

Zusammenfassung

Aliase und Funktionen verkürzen wiederkehrende Befehle zu einfachen Abkürzungen. Für einfache Befehlsverkürzungen reicht ein Alias. Wenn du Argumente verarbeiten musst, verwendest du eine Bash-Funktion. Beide speicherst du in der ~/.bashrc oder ~/.bash_aliases, um sie dauerhaft verfügbar zu machen.