Good to Know Database

Doppelte Befehle in der Command History vermeiden


Wenn Sie einen Befehl mehrmals ausführen, wird dieser auch mehrmals in der Command History abgespeichert. Dies ist besonders lästig, wenn man anschließend einen Befehl mit den Pfeiltasten in der Command History sucht und zuerst eine Liste mit immer dem gleichen Befehl durchlaufen muss.

Abhilfe schafft hier die Umgebungsvariable HISTCONTROL. Weist man dieser Umgebungsvariable den Wert erasedups zu, werden Befehle, welche bereits in der Command History gespeichert sind, nicht mehr gespeichert. Sie können die Umgebungsvariable HISTCONTROL wie folgt für die aktuelle Sitzung setzen.

[root@centos5 ~]# export HISTCONTROL=erasedups

Mit ein paar Befehlen können Sie sehr schnell überprüfen, ob das gewünschte Ergebnis erreicht wurde.

[root@centos5 ~]# ls
[root@centos5 ~]# ls
[root@centos5 ~]# cd
[root@centos5 ~]# ls
[root@centos5 ~]# ls
[root@centos5 ~]# history
    1  export HISTCONTROL=erasedups
    2  cd
    3  ls
    4  history

Wie Sie sehen, wird dank erasedups jeder doppelte Einrag in der Command History vermieden.

Sollten Sie die Abfolge in welcher Sie die Befehle ausgeführt haben benötigen, jedoch keine doppelten aufeinanderfolgenden Befehle in der Command History speichern wollen, wird Ihnen erasedups nicht wirklich die gewünschte Hilfe bieten. Für diesen Fall hilft Ihnen ignoredups weiter.

[root@centos5 ~]# export HISTCONTROL=ignoredups

Zum Überprüfen der Funktion von ignoredups können Sie wieder einige Befehle aufrufen und sich danach die Command History ausgeben lassen.

[root@centos5 ~]# ls
[root@centos5 ~]# ls
[root@centos5 ~]# cd
[root@centos5 ~]# ls
[root@centos5 ~]# ls
[root@centos5 ~]# history
    1  export HISTCONTROL=ignoredups
    2  ls
    3  cd
    4  ls
    5  history

Damit bei der Anmeldung die Umgebungsvariable HISTCONTROL mit dem gewünschten Wert automatisch gesetzt wird, bearbeiten Sie einfach Ihre persönliche ~/.bash_profile.

[root@centos5 ~]# vi ~/.bash_profile

Wenn Sie erasedups verwenden wollen, fügen Sie am Ende der Datei die folgende Zeile ein.

HISTCONTROL=erasedups

Für ignoredups verwenden Sie stattdessen die folgende Zeile.

HISTCONTROL=ignoredups

Bei der nächsten Anmeldung wird die Umgebungsvariable HISTCONTROL automatisch mit dem festgelegten Wert gesetzt.


Dieser Eintrag wurde am 13.04.2010 erstellt.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_7_920.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer