격리된 빈 기록으로 각 셸을 시작하도록 ZSH를 어떻게 구성할 수 있나요?

격리된 빈 기록으로 각 셸을 시작하도록 ZSH를 어떻게 구성할 수 있나요?

Oh My Zsh와 함께 ZSH를 사용합니다. 나는 모든 새로운 ZSH 쉘이 빈 기록으로 시작되기를 원합니다. 한 쉘에 입력된 명령은 다른 쉘의 기록에 나타나지 않습니다. 이 목표를 어떻게 달성할 수 있나요?

나는 다음을 내 파일에 추가하려고 시도했지만 ~/.zshrc아무 소용이 없었습니다.

setopt no_share_history
unsetopt share_history
unsetopt inc_append_history
unsetopt append_history

나는 또한 이것을 따라해 보았습니다.답변화살표 키를 사용하면 지역 기록만 표시되도록 만들었으나 효과가 없는 것 같습니다.

현재 새 셸을 열면 기록을 가져옵니다. 기록을 삭제할 수 없는 것 같습니다. 기록을 삭제하면 ~/.zsh_history새 셸을 열자마자 전체 이전 콘텐츠와 함께 다시 나타납니다. inc_append_history이렇게 하면 기록을 즉시 쓸 수는 없지만 쉘이 닫히면 기록이 결국 저장됩니다.

답변1

파일 에 다음을 추가하세요 ~/.zshrc.

function erase_history { local HISTSIZE=0; }
erase_history

대화형 zsh 셸을 시작할 때마다 기록이 삭제됩니다.

답변2

HISTFILESAVEHISTzsh 기록은 변수(기록 파일의 경로)와 변수(저장할 항목 수)를 설정한 경우에만 저장 됩니다.

~/.zshrc따라서 설정된 위치(귀하의 것이거나 포함된 파일일 수 있음)에서 이러한 변수 정의를 삭제하기만 하면 됩니다. 그중 하나만 설정해도 충분합니다.

setopt no_share_historyand unsetopt share_history(또는 set +o nonosharehistory, etc. or ) 는 options[sharehistory]=off완전히 동일합니다.

관련 정보