====== Aliases (mit mehreren Befehlen) ====== Wenn man die Bash häufig benutzt, merkt man sehr schnell, dass man bestimmte Befehle häufig wiederholt. Um die Benutzung zu vereinfachen, kann man sich Aliases definieren, die einen Befehl (oder sogar mehrere) auf einmal ausführen. Diese Einstellungen macht man in der ''.bashrc'' oder der ''.bash_profile'' im eigenen Home-Verzeichnis. Um sie zu editieren, kann man sie bspw. mit ''vim'' öffnen: $ vim ~/.bash_profile Ein grafischer Text-Editor geht natürlich auch. Sollte die Datei nicht existieren, kann man sie einfach anlegen. ===== Einfache Aliases ===== Ein klassisches Alias (das manchmal vom Betriebssystem sogar schon vordefiniert ist), ist die Kurzform ''ll'' für ''ls -l''. Diese würde man in der Datei so anlegen: alias ll='ls -l' Natürlich kann man hier auch komplexere Ausdrücke verwenden: alias alldirs='find . -type d' Dies definiert ein Alias, um alle Verzeichnisse im aktuellen Pfad aufzulisten (ist ja nur ein Beispiel). ===== Komplexe Aliases ===== Um mehrere Befehle durch ein Alias ausführen zu lassen, gibt es mehrere Wege. Man kann in Aliases die gleichen Operatoren verwenden wie direkt in der Kommandozeile, wenn man mehrere Befehle kombinieren will: # beide befehle ausführen, egal was passiert alias doBoth='command1; command2' # den zweiten Befehl nur ausführen, wenn der erste geklappt hat alias doAnd='command1 && command2' # den zweiten Befehl nur ausführen, wenn der erste nicht geklappt hat alias doOr='command1 || command2' Persönlich finde ich diese Notation bei komplexeren Sachen etwas unübersichtlich. Zum Glück gibt es aber eine Alternative: Funktionen. Man kann globale Funktionen definieren, die dann in immer zur Verfügung stehen. Das sieht dann so aus: myShortcut() { command1 command2 } In der Funktion kann man natürlich auch wieder die Bash-Operatoren (und theoretisch auch noch viel mehr) benutzen. ===== Aliases aktivieren ===== Wenn du ein neues Terminal öffnest, wird automatisch eine existierende ''~/.bashrc'' und/oder ''~/.bash_profile'' eingelesen, also sind alle deine Aliases sofort verfügbar. Um sie in einem Terminal verfügbar zu machen, in dem du gerade arbeitest, kannst du auch das Einlesen der Datei erzwingen: $ source ~/.bash_profile