Forum
Tipps
News
Menu-Icon

Bash-history Einträge schlank halten

Guten Tag!
Ich habe einige Fragen zur .bash-history und .bashrc.

Es gibt ja die Variable für .bashrc HISTCONTROL.

1) Wie muss ich diese setzen, damit ein Befehl nur einmal in der .bash-history auftaucht?

Bsp.:
ls <-soll weg
exit <-soll weg
ls
exit


Was genau bewirkt HISTCONTROL="ignoreboth"?
Es heißt ja es wird ignoredups und ignorespace genutzt.
Bei ignorspace würde dann ein Befehl z.B. Linux@123>"Leerzeichen"ls nicht in die History aufgenommen.
Ignoredups heißt es, dass sch vorhandene Einträge nicht in die History aufgenommen werden. Aber das tut er bei mir so wie oben gezeigt. Aber warum?
Und was macht erasedups? Löscht gleiche Einträge und behält das Neuste?

2) Wie muss z.B. HISTCONTROL gesetzt werden, damit folgendes passiert:

Bash-History:
ls
ls
ls
exit
ls
exit

Befehle die hintereinander ausgeführt wurden (3x ls) sollen nur einmal vorkommen (1x ls) und zusätzlich ignorespace gesetzt ist:

ls
exit
ls
exit


Kann mich jemand aufklären?

Danke und Gruß

Thomas


Antworten zu Bash-history Einträge schlank halten:

Moin!

Zu 1)

Dies kannst du mit "erasedups" machen.
Er löscht doppelte Einträge in der History und speichert nur den letzten Eintrag.

Bsp.:
Aus:
ls
exit
ls
exit

wird

ls
exit


Zu 2)
Um dies zu erreichen brauchst du "ignoredups".
Aus:
ls
ls
ls
exit
ls

wird

ls
exit
ls
exit



Allgemein:
erasedups löscht doppelte Einträge und speichert den letzten Befehl am Ende.

ignoredups speichert einen Befehl nur einmal, obwohl man ihn mehrmals hintereinander ausführt. Der Befehl taucht erst dann wieder auf, wenn man einen anderen Befehl vorher eingibt.

ignorespace speichert Befehle die mit einem Leerzeichen beginnen nicht.

ignoreboth kombiniert ignoredups und ignorespace.

Hoffe es ist jetzt alles klar. ;)


« Linux und WIN7 parallel auf SSDubuntu 13.04 »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Tag
Ein Tag ist ein englischer Begriff und bedeutet so viel wie Etikett, Mal, Marke, Auszeichner und Anhänger. Generell ist Tag eine Auszeichnung eines Datenbetandes mit...

nbsp
nbsp - oder besser als HTML-Code   - steht für "non-breaking space": zu deutsch: ein geschütztes Leerzeichen. Im Gegensatz zu einem normalen Leerzeichen so...

History
Als History wird eine Liste bezeichnet, die der Browser automatisch anlegt und in eine Datei auf der Festplatte speichert. Hier werden die angesurften Webseiten aufgelist...