이것이 예상되는지 모르겠지만 내 기록은 여러 세션에 저장되지 않습니다. 즉, 창을 닫으면 다시 열면 기록이 비어 있습니다. 여러 세션에서 어떻게 유지할 수 있습니까?
요청한 명령의 출력은 다음과 같습니다.
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.
세션간에 기록을 저장할 수 없습니다. 다음 질문을 읽었습니다.
- histappend를 사용할 때 배쉬 히스토리 손실
- Bash가 기록을 변경하지 못하게하는 방법은 무엇입니까?
- bash history 명령에 무엇이 표시됩니까?
- 여러 세션에서 bash 기록을 유지하려면 어떻게해야합니까?
- bash 기록을 정기적으로 저장하십시오.
중복 된 것으로 질문을받은 사람의 아래 답변을 포함하여 아무도 내 문제를 다루지 않는 것 같습니다.
또한 내 질문 과 여기 에 연결된 질문을 참조하십시오 . 제안 사항을 시도하고 여전히 문제가 있는지 다시 질문하십시오. 각성시, 중복으로 마감 투표.
—
terdon
편집 : set -o | 그렙 역사 쇼 역사는 모두 500을 보여 에코 $ HISTFILE 쇼 ~ / .bash_history 파일, 에코, $ HISTSIZE와 $ HISTFILESIZE에 있지만 역사는 여전히 세션에 걸쳐 유지되지 않습니다
—
Car981
$ HISTFILE이 ~ / .bash_history로 설정되었지만 ~에 .bash_history 파일이 없습니다. 어떻게 이럴 수있어 ?
—
Car981
특정 기록 파일을 설정하고이 줄을
—
terdon
~/.bashrc
:에 추가하십시오 export HISTFILE="~/history"
. 차이가 있습니까?