Ich weiß nicht, ob dies erwartet wird, aber mein Verlauf wird nicht über Sitzungen hinweg gespeichert. Das heißt, wenn ich das Fenster schließe und dann es wieder öffne, ist der Verlauf leer. Wie kann ich es über Sitzungen hinweg beibehalten?
Hier sind die Ausgaben der Befehle, die Sie gefragt haben:
set -o | grep history
history on
$ grep -i history ~/.bashrc ~/.bash_profile ~/etc/bash.bashrc ~/etc/profile ~/.profile
/cygdrive/c/cygwin/home/car/.bashrc:# Make bash append rather than overwrite the history on disk
/cygdrive/c/cygwin/home/car/.bashrc:# History Options
/cygdrive/c/cygwin/home/car/.bashrc:# Don't put duplicate lines in the history.
/cygdrive/c/cygwin/home/car/.bashrc:# export PROMPT_COMMAND="history -a"
grep: /cygdrive/c/cygwin/home/car/etc/bash.bashrc: No such file or directory
grep: /cygdrive/c/cygwin/home/car/etc/profile: No such file or directory
/cygdrive/c/cygwin/home/car/.profile:if [ "x$HISTFILE" == "x/.bash_history" ]; then
/cygdrive/c/cygwin/home/car/.profile: HISTFILE=$HOME/.bash_history
$ ls -la ~/ | grep history -> no output
$ echo $HISTFILE
~/.bash_history
$ echo $HISTSIZE
500
$ echo $HISTFILESIZE
500
Nach den in der Antwort unten beschriebenen Änderungen erhalte ich nun:
grep -i hist .bashrc
# Make bash append rather than overwrite the history on disk
shopt -s histappend
# History Options
# Don't put duplicate lines in the history.
export HISTCONTROL="ignoredups"
# (added) A new shell gets the history lines from all previous shells
PROMPT_COMMAND='history -a'
# HISTIGNORE is a colon-delimited list of patterns which should be excluded.
Ich kann immer noch keinen Verlauf über Sitzungen hinweg speichern. Ich habe folgende Fragen gelesen:
- Bash-Verlaufsverlust bei Verwendung von histappend
- Wie kann verhindert werden, dass Bash die Geschichte verändert?
- Was bestimmt, was im Befehl bash history angezeigt wird?
- Wie behalte ich meinen Bash-Verlauf über Sitzungen hinweg?
- Speichern Sie regelmäßig die Bash-Geschichte
Keiner schien mein Problem anzusprechen, einschließlich der Antwort unten von genau der Person, deren Frage von dem angeblichen Duplikat beantwortet wurde.
set -o | grep history
, grep -i history ~/.bashrc ~/.bash_profile ~/etc/bash.bashrc ~/etc/profile ~/.profile
und ls -la ~/ | grep history
.
~/.bashrc
: export HISTFILE="~/history"
. Macht das einen Unterschied?