bash 기록을 유지하는 방법? /cygdrive/c/cygwin/home/car/etc/profile: No

이것이 예상되는지 모르겠지만 내 기록은 여러 세션에 저장되지 않습니다. 즉, 창을 닫으면 다시 열면 기록이 비어 있습니다. 여러 세션에서 어떻게 유지할 수 있습니까?

요청한 명령의 출력은 다음과 같습니다.

 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

아래 답변에 설명 된 수정 사항을 얻은 후에는 다음을 얻습니다.

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.

세션간에 기록을 저장할 수 없습니다. 다음 질문을 읽었습니다.

중복 된 것으로 질문을받은 사람의 아래 답변을 포함하여 아무도 내 문제를 다루지 않는 것 같습니다.



답변

글쎄, ~/.bashrc필요한 옵션이없는 것 같습니다 . 이 줄이 당신의 안에 있는지 확인하십시오 ~/.bashrc:

# Make Bash append rather than overwrite the history on disk:
shopt -s histappend
# A new shell gets the history lines from all previous shells
PROMPT_COMMAND='history -a'
# Don't put duplicate lines in the history.
export HISTCONTROL=ignoredups

답변

OK 나는 무엇이 잘못되었는지 알았다. 창을 닫을 수 없습니다. 정상적으로 종료하려면 ‘종료’를 입력해야합니다.