Kann ich den Befehlsverlauf in Bash vergrößern?
Beachten Sie, dass ich hier einen Red Hat Linux-Computer in der Abteilung für Astrophysik benutze (damit ich nicht so viele Berechtigungen bekomme).
Kann ich den Befehlsverlauf in Bash vergrößern?
Beachten Sie, dass ich hier einen Red Hat Linux-Computer in der Abteilung für Astrophysik benutze (damit ich nicht so viele Berechtigungen bekomme).
Antworten:
Anstatt Zahlen anzugeben, können Sie dies auch tun
unset HISTSIZE
unset HISTFILESIZE
shopt -s histappend
In diesem Fall ist nur Ihre Festplattengröße (und Ihre "größte Dateibeschränkung", falls Ihr Betriebssystem oder FS eine hat) die Grenze.
Beachten Sie jedoch, dass dies die Bash-Geschwindigkeit mit der Zeit immer mehr verlangsamen wird. In diesem BashFAQ-Dokument und im Artikel zur Debian -Administration (der ursprüngliche Link ist gestorben, schauen Sie in einen Spiegel: archive.is und archive.org ) finden Sie Techniken, die besser skalierbar sind .
history-size
Ihre inputrc
.
.bash_history
größer sind.
Sie können logrotate verwenden , um alte Einträge zu erhalten. So können Sie beispielsweise Größenbeschränkungen festlegen, die die Archivierung auslösen. Es wird normalerweise von einem täglichen Cronjob ausgeführt, aber Sie können es genauso gut über Ihr .bash_logout
Skript aufrufen .
@Philomath, das Deaktivieren dieser Umgebungsvariablen funktioniert bei mir überhaupt nicht! Für mich führt dies dazu, dass bash seine eingebauten Standardeinstellungen verwendet (es scheint), um .bash_history auf ungefähr 9 KB zu kürzen.
Was für mich funktioniert, ist das Folgende in meinem .bashrc:
export HISTSIZE=
export HISTFILESIZE=
shopt -s histappend
15 Examples To Master Linux Command Line History