History search

Wenn man einen Befehl in der Konsole ausführt, wird dieser in der Datei

~/.bash_history

gespeichert.

Mit den Pfeiltasten hoch und runter, kann man alle bereits eingegebenen Befehle wieder aufrufen.

Da dies aber recht lange dauern kann, bis man den richtigen Befehl gefunden hat, gibt es mehrere Möglichkeiten, dies zu vereinfachen, um schneller ans Ziel zu kommen.

1. Man tippt

history

und merkt sich die Nummer, die vor dem gewünschtem Befehl steht. (z.B. 234)

Dann gibt man

!234

ein und der Befehl wird ausgeführt.

2. Man benutzt die “reverse-i” Funktion, indem man [STRG]+[R] drückt.
Danach ändert sich die Eingabe in:

(reverse-i-search)`':

Jetzt kann man die ersten bekannten Anfangsbuchstaben eingeben. Sobald ein Buchstabe gedrückt wird, wird ein Treffer angezeigt. Ist dies jetzt nicht der richtige Befehl kann man durch weiteres drücken der [STRG]+[R] Kombination, weitere Treffer anzeigen lassen.
Wird beim richtigen Treffer [ENTER] gedrückt, wird der Befehl gleich ausgeführt. Will man aber vorher was ändern, drückt ihr einfach [ESC] und der Befehl wird angezeigt ohne ausgeführt zu werden.

3. Leider ist bei Punkt Zwei das Problem, dass man nur in eine Richtung suchen kann… drückt man einmal zuviel [STRG]+[R] dann ist man am gewünschtem Befehl vorbei und fängt von vorne an.

Mit ein biserl Tipparbeit gibt es ein schönes Schmankerl:

Erstellt zuerst in eurem home Verzeichnis die Datei .inputrc:

touch ~/.inputrc

fügt mit dem Editor eurer Wahl … vim … ;) folgende Zeilen ein:

"\e[A": history-search-backward
"\e[B": history-search-forward

Wenn ihr jetzt einen Suchbegriff eingebt… z.B. “ls” dann könnt ihr mit den Pfeiltasten hoch und runter alle History Einträge durchzappen, die mit “ls” anfangen.

Seid gegrüßt
Alf

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>