Können wir ändern, wie bash_history aktualisiert wird?

Können wir ändern, wie bash_history aktualisiert wird?

Da ich Bash auf meinem Desktop verwende, habe ich ein Gnome-Terminalfenster mit mehreren Registerkarten und 6 bis 10 geöffneten Shells.

Wenn ich mich von meiner X-Sitzung abmelde, ~/.bash_historywird mein Konto auf zufällige Weise aktualisiert … (zumindest wenn Sie mich fragen, ich habe dafür kein klares Muster erkannt.)

Ich frage mich, ob der gesamte Verlauf aller Shells, die ich ausgeführt habe, angehängt werden könnte. Derzeit scheint es so, als würde nur eine der Shells ihren Verlauf in der Datei speichern (oder tun das eher alle und die letzte gewinnt?)

Am besten wäre meiner Meinung nach eine Möglichkeit, Befehle so zu speichern, wie ich sie von einer Instanz aus eingebe. Das wäre sicherlich die sauberste Methode, wenn es machbar ist, da die Reihenfolge erhalten bliebe (d. h. ich kann nicht gleichzeitig in mehr als einer Shell tippen, daher wird der Verlauf in der Reihenfolge gespeichert, in der ich die Befehle in jeder Shell eingegeben habe.)

Antwort1

Schauen Sie sich das an:

HISTFILESIZE=400000000
HISTSIZE=10000
PROMPT_COMMAND="history -a"

shopt -s histappend

http://mywiki.wooledge.org/BashFAQ/088

verwandte Informationen