Shell-Tastaturkürzel
Verwenden der Historie
- Pfeil oben
- erlaubt Ihnen das Navigieren durch die letzten Befehle wobei Sie zum nächstfrüheren Befehl kommen.
- Pfeil unten
- erlaubt Ihnen das Navigieren durch die letzten Befehle wobei Sie zum nächstspäteren Befehl kommen.
- !!
Wiederholt den letzten Befehl.
So wird z.B. mit
$ sudo !!
der letzte Befehl mit den Rechten des Superusers ausgeführt.
- !foo
führt den letzten Befehl aus, der mit foo begann.
Falls Sie sich unsicher sind, welches der letzte Befehl mit foo war, können Sie sich mit``!foo:p`` zunächst diesen Befehl anzeigen lassen.
Eine übliche Befehlsabfolge ist demnach:
$ !find:p find ~/tmp/* -mmin +10 -exec rm -rf {} \; >/dev/null 2>&1 $ !! find ~/tmp/* -mmin +10 -exec rm -rf {} \; >/dev/null 2>&1
- foo !$
führt den Befehl foo aus mit den Attributen des vorigen Befehls, also z.B.:
mkdir ~/new//folder cd !$
- !123
führt den Befehl aus, der in der Historie an 123ster Stelle aufgeführt ist. Ein typisches Szenario ist, dass wir zunächst in der Historie alle Befehle suchen, die find enthalten und anschließend den passenden ausführen:
$ history | grep find 224 find ~/tmp/* -mmin +10 -exec rm -rf {} \; >/dev/null 2>&1 513 history | grep find $ !224 find ~/tmp/* -mmin +10 -exec rm -rf {} \; >/dev/null 2>&1
Expansion
- {}
Geschweifte Klammern erlauben das ausführen von Befehlen auf mehrere Dateien gleichzeitig, z.B.:
$ mkdir vs.policy/{trunk,branches,tags}
Aliase
Es können Aliase von Befehlen in der Bash-Konfigurationsdatei unter ~/.bash_profile angegeben, z.B.:
alias ll='ls -ahlF'
Weitere Beispiele finden Sie z.B. in grep-Umgebungsvariablen.
Auto-Vervollständigung
Die Bash liefert bereits viele Arten der Auto-Vervollständigung, z.B. für Pfade, Dateien, Nutzer, Hosts und Variablen.
- Pfade
- das erste Wort einer Zeile wird zum Pfad einer ausführbaren Datei vervollständigt
- Dateinamen
- das zweite Wort einer Zeile wird zu einem Datei- oder Verzeichnisnamen vervollständigt
- Benutzernamen
- die Eingabe von ~ wird zu den Benutzernamen vervollständigt
- Hostnamen
- die Eingabe von @ wird zu den Hostnamen vervollständigt
- Variablen
- wird dem Wort $ vorangestellt, so wird zu einer Umgebungsvariablen vervollständigt
Bash-Completion
Wir haben Bash-Completion bereits installiert, es muss von Ihnen lediglich noch aktiviert werden indem Sie in der ~/.bashrc-Datei folgendes angeben:
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then . /etc/bash_completion fi
Anschließend erhalten Sie für die Unix-Befehle, aber auch für weitere Programme wie z.B. apache, git, mercurial, paster und subversion programmatische Vervollständigungen.