Bash: Eine schönere History
Mir ist bei meinen Arbeiten zum Projekt: Neuer Server aufgefallen, dass die History in der Shell zwar hilfreich ist, aber durchaus noch etwas verfeinert werden kann.
Nach kurzer Recherche konnte ich sie meinen Ansprüchen anpassen, in dem ich die Datei ~/.bashrc um folgende Zeilen erweiterte:
export HISTCONTROL=ignoreboth
export HISTSIZE=500
export HISTIGNORE="&:ls:history:exit"
export HISTTIMEFORMAT="[%d.%m.%Y - %T] "
Der Parameter HISTCONTROL kann mit einen der folgenden Strangs gefüttert werden: ‘ignorespace‘, ‘ignoredups‘ oder ‘ignoreboth‘.
Durch ignorespace werden alle Zeilen, die mit einem Leerzeichen beginnen, nicht in die History aufgenommen.
Mit ignoredups werden doppelte Einträge entfernt, so dass immer nur der jüngste vorhanden bleibt.
Selbsterklärend ist nun ignoreboth: Dort werden einfach beide Funktionen übernommen.
Die eingetragene Zahl in HISTSIZE bestimmt, wieviele Einträge in der History gespeichert werden. Üblicherweise sollten die letzten 500 Zeilen nachvollziehbar sein.
HISTIGNORE enthält die Befehle, die nicht mit in die History aufgenommen werden sollen. Dadurch halte ich persönlich meine History sauber, in dem ich unnötige Zeilen wie ls oder exit von ihr fern halte.
Mit HISTTIMERFORMAT lasse ich einen Zeitstempel in der History anzeigen. Sehr hilfreich, wenn man mit mehreren Leuten in der Bash rumhängt oder beim Suchen einer Befehlszeile nur noch die Uhrzeit im Kopf hat.
