Bequem(er) durch die History der Bash

Bequem(er) durch die History der Bash
18.02.2014 13:01

Die Bash merkt sich netterweise die zuletzt eingegebenen Kommandos. Über die Pfeiltasten nach oben und unten navigiert man schnell zwischen den alten Befehlen. Wer nach einem ganz bestimmten Befehl sucht, kann auch [Strg+r] drücken und dann einen Teil des gesuchten Befehls eintippen. Dabei zeigt die Bash allerdings immer nur einen Befehl an. Das ist besonders dann unvorteilhaft, wenn man etwa zuvor mehrfach ./configure mit immer wieder anderen Parametern aufgerufen hatte.

Wesentlich komfortabler in der Vergangenheit stöbern lässt sich mit der BASH History Suggest Box. Via hh aufgerufen, zeigt dieses Werkzeug zunächst eine Liste aller zuletzt abgesetzten Befehle (wie in der untenstehenden Abbildung). Mit den Pfeiltasten kann der Anwender jetzt einen Befehl ansteuern und ihn entweder direkt mit der Eingabetaste aufrufen oder aber per [Tab] an das Prompt setzen lassen.

Die BASH History Suggest Box in Aktion

Wer ein bestimmtes Kommando sucht, kann auch einfach ein paar seiner Zeichen eintippen. Es genügt dabei, einfach loszuschreiben. Die BASH History Suggest Box listet dann alle Befehle auf, die in irgendeiner Weise infrage kommen. Auch hier steuert man den gesuchten Befehl wieder mit den Pfeiltasten an – oder tippt einfach weiter, bis die Auswahl entsprechend eingeschränkt ist.

Inbetriebnahme

Die BASH History Suggest Box steht im Quellcode auf Github bereit. Ein .tar.gz-Archiv mit der aktuellen stabilen Version gibt es auf einer eigenen Seite, auf der man sich nicht von der Überschrift irritieren lassen sollte.

Das Quellcodearchiv muss man nur auf der Festplatte entpacken. Anschließend installiert man über seinen Paketmanager den C-Compiler und make sowie die Entwicklerpakete zu ncurses und Readline. Unter Ubuntu sind das die Pakete build-essential, libncurses5-dev und libreadline-dev. Jetzt kann man den Quellcode der BASH History Suggest Box mit dem klassischen Dreisatz übersetzen und einspielen:

./configure
make
sudo make install

Das Werkzeug startet dann ein simples:

hh

Konfiguration

In der Liste zeigt die BASH History Suggest Box standardmäßig nur ausgewählte Kommandos an. Das Werkzeug orientiert sich dabei an der Häufigkeit, der Länge und dem Zeitstempel der Befehle. Mit [Strg+/] (bei einer deutschen Tastaturbelegung also [Strg+Umschalt+7]) zeigt Liste die Befehle hingegen in genau der Reihenfolge, in der man sie eingegeben hatte.

Die Konfiguration der des Werkzeugs erfolgt maßgeblich über Umgebungsvariablen. Für mehr Farbe in der Benutzeroberfläche sorgt beispielsweise:

export HH_CONFIG=hicolor
hh

Alle übrigen Umgebungsvariablen erläutert die Manpage. Wer Gefallen an der BASH History Suggest Box findet, kann das Werkzeug mit dem folgenden Befehl auf die Tastenkombination [Strg+r] legen:

hh --show-configuration >> ~/.bashrc

Kommentare

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 2 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Start-Job behindert Bootvorgang, Suse 13.2, KDE,
Wimpy *, 20.02.2015 10:32, 4 Antworten
Beim Bootvorgang ist ein Timeout von 1 Min 30 Sec. weil eine Partition sdb1 gesucht und nicht gef...
Konfiguration RAID 1 mit 2 SSDs: Performance?
Markus Mertens, 16.02.2015 10:02, 4 Antworten
Hallo! Ich möchte bei einer Workstation (2x Xeon E5-2687Wv3, 256GB RAM) 2 SATA-SSDs (512GB) al...
Treiber für Canon Laserbase MF5650
Sven Bremer, 10.02.2015 09:46, 1 Antworten
Hallo ich weiß mittlerweile das Canon nicht der beste Drucker für ein Linux System ist. Trotzd...
Linux und W7 im Netz finden sich nicht
Oliver Zoffi, 06.02.2015 11:47, 3 Antworten
Hallo! Ich verwende 2 PCs, 1x mit W7prof 64 Bit und einmal mit Linux Mint 17 64 Bit, welches ich...
Rootpasswort
Jutta Naumann, 29.01.2015 09:14, 1 Antworten
Ich habe OpenSuse 13.2 installiert und leider nur das Systempasswort eingerichtet. Um Änderungen,...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Speedport W 700V
Alfred Zahlten, 03.03.2015 02:27
Am 02.03.2015 um 12:04 schrieb Rainer: Hallo Rainer, Danke für die Links, auch c't ist interessant und hi...
Re: [EasyLinux-Ubuntu] Speedport W 700V
Karl-Heinz, 02.03.2015 20:07
Am Sun, 01 Mar 2015 13:55:31 +0100schrieb Alfred Zahlten : Hallo Alfred, > wer betreibt noch den Speedpo...
Re: [EasyLinux-Ubuntu] Speedport W 700V
Rainer, 02.03.2015 12:04
Hallo Alfred, Am Sun, 01 Mar 2015 23:36:36 +0100 schrieb Alfred Zahlten : > >> > > Nur m...
Re: [EasyLinux-Ubuntu] [SuSE 13.2] fetchmail lock
Uwe Herrmuth, 02.03.2015 09:03
Hallo Stefan, H.-Stefan Neumeyer schrieb am 01.03.2015 um 19:13: > Ich fahre meinen Haupt-Arbeitsrechner...
Re: [EasyLinux-Ubuntu] Speedport W 700V
Alfred Zahlten, 01.03.2015 23:36
Am 01.03.2015 um 20:58 schrieb Rainer: Hallo Rainer, > [..] > >> Ich bin sicher, die Teleko...