Ich verwende Bash. Um meinen Befehlsverlauf zu durchsuchen, rufe ich den history
Befehl auf, der meiner Meinung nach das gleichnamige Gnu-Programm aufruft. (Ich weiß nicht, ob es einen besseren Bash-spezifischen Weg gibt).
In meiner .bashrc habe ich derzeit eine Zeile, export PROMPT_COMMAND='history -a'
um den Verlauf meiner mehreren ausgeführten Bash-Sitzungen beizubehalten.
Wenn ich den Verlauf durchführe, werden mir derzeit nur 524 Einträge angezeigt. Ist das konfigurierbar? Ich würde das gerne auf eine viel größere Zahl erhöhen, beispielsweise 2000.
Antwort1
Erstens,history
Istdie bash-spezifische Methode, keine bessere. Der history
Befehl ist ein Bash-Builtin, wie Sie sehen können, wenn Sie ausführen
$ type history
history is a shell builtin
Die Anzahl der gespeicherten Befehle wird nun durch die HISTSIZE
Variable gesteuert. Um sie auf eine größere Zahl einzustellen, fügen Sie diese Zeile zu Ihrer hinzu .profile
(warum dies ein besserer Ort dafür ist als .bashrc
, sieheHier):
export HISTSIZE=2000
Von nun an history
werden die letzten 2000 von Ihnen ausgeführten Befehle zurückgegeben.
Antwort2
Die HISTSIZE
Variable gibt vor, wie viele Befehle im Ausführungsverlauf gespeichert werden und HISTFILESIZE
legt fest, wie viele Befehle aus dem Ausführungsverlauf gespeichert werden, sobald die Shell beendet wird.
Antwort3
Ja, man bash
sagt:
HISTSIZE - Die Anzahl der Befehle, die im Befehlsverlauf gespeichert werden sollen
Aber es gibt eine Readline
Variable:history-size
Legen Sie die maximale Anzahl der in der Verlaufsliste gespeicherten Verlaufseinträge fest. Wenn der Wert auf Null gesetzt ist, werden alle vorhandenen Verlaufseinträge gelöscht und es werden keine neuen Einträge gespeichert. Wenn der Wert kleiner als Null ist, ist die Anzahl der Verlaufseinträge nicht begrenzt. Standardmäßig ist die Anzahl der Verlaufseinträge nicht begrenzt.
Sie können history-size
mit HISTSIZE=1000
oder bind 'set history-size 1000'
mit der folgenden Zeile in Ihrem festlegen ~/.inputrc
:set history-size 1000
Beispiele:
HISTSIZE=1000
bind 'set history-size 0'
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 0
history # prints nothing
bind 'set history-size 0'
HISTSIZE=1000
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 1000
history # prints 13 echo $HISTSIZE\n14 bind -v | grep history-size\n15 history
history-size
erhältlich seit bash-4.0-alpha
:ÄNDERUNGEN
Antwort4
For more information, I am adding it. I used ubuntu 18. This worked for me.
$ echo $HISTSIZE
1000
$ echo $HISTFILESIZE
1000
$ echo $HISTFILE
vi /home/siva/.bashrc # here we need to update the HISTSIZE variable to the required thing.
NOTE: open new terminal and check updated value will bere printed if you run $ echo $HISTSIZE
Reference Link:
https://www.redhat.com/sysadmin/history-command