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

Aktuelle Fragen

Würde gerne openstreetmap.de im Tor-Browser benutzen, oder zu gefährlich?
Wimpy *, 21.08.2017 13:24, 0 Antworten
Im Tor-Netzwerk (Tor-Browser) kann ich https://www.openstreetmap.de/karte.html# nicht nutzen....
Samsung VG-KBD1500 - Bluetooth-Tastatur mit Touchpad mit Xubuntu 16.04.2 LTS
Linux- & BSD-UserGroup im Weserbergland, 16.08.2017 19:16, 0 Antworten
Bin grad mit "meinem Latein am Ende" darum hier mal so in den Raum geworfen. Samsung VG-KBD1500 -...
Tails verbindet nicht mit WLan
Georg Vogel, 30.07.2017 15:06, 5 Antworten
Hallo zusammen! Habe mir von Linux Mint aus einen Tails USB-Stick erstellt. Läuft soweit gut,...
Genivi for Raspberry Pi 3
Sebastian Ortmanns, 28.07.2017 10:37, 1 Antworten
I try to build a Genivi Development Platform for Rasberry Pi 3. But I always get the failures bel...
Bash awk Verständnis-Frage
Josef Federl, 22.07.2017 17:46, 2 Antworten
#!/bin/bash # Skriptdateiname = test.sh spaltennummer=10 wert=zehner awk '{ $'$spaltennummer'...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Internet Geschwindigkeit
Udo Teichmann, 19.08.2017 15:49
Am Samstag, den 05.08.2017, 18:20 +0200 schrieb Udo Teichmann: Liebe fleißige Helfer Vielen Dank für den Ti...
[EasyLinux-Ubuntu] Notebook wacht nicht mehr auf
Gerhard Blaschke, 19.08.2017 15:04
Hallo Liste, habe hier ein Notebook Acer Extensa 5630 mit Wheezy. Testweise habe ich es in den Ruhezustand...
Re: [EasyLinux-Ubuntu] bash Leerzeichen vor dem Curser
Uwe Herrmuth, 18.08.2017 08:52
Hallo Volker, Volker schrieb am 18.08.2017 um 07:33: > volker@volker-Aspire-E5-575:~$ echo $PWD &&am...
Re: [EasyLinux-Ubuntu] bash Leerzeichen vor dem Curser
Volker Borst, 18.08.2017 07:33
Hallo Uwe, Am 16.08.2017 um 21:56 schrieb Uwe Herrmuth: > > Dann hab ich eine ganz gewagte Vermutu...
Re: [EasyLinux-Ubuntu] bash Leerzeichen vor dem Curser
Uwe Herrmuth, 16.08.2017 21:56
Hallo Volker, Volker Borst schrieb am 16.08.2017 um 19:22: > > echo $PS1 > > ${debian_chr...