가능한지 모르겠지만 현재 터미널을 사용하는 대신 터미네이터와 같은 두 번째 터미널을 사용하고 싶습니다 $HISTFILE
.
답변1
쉘에 따라 다릅니다. 배쉬에서는 할 수 있습니다다양한 방법으로 기록 제어:
저장 기록 사용을 비활성화
set +o history
하고 다시 활성화합니다set -o history
(더하기 및 빼기 기호가 반대임). 기록이 비활성화되면 입력된 명령은 기록 로그에 저장되지 않지만 이전 명령은 사용할 수 있습니다.HISTFILE
( )을 설정하여HISTFILE=~/somehistoryfile
이력 저장에 사용할 파일을 설정합니다 . unset 변수를 사용하여 완전히 비활성화할 수 있습니다unset HISTFILE
. 기록 파일을 비활성화해도 셸이 실행되는 동안 런타임 기록에 계속 액세스할 수 있습니다.HISTFILESIZE
제어 파일에 저장되는 명령의 개수 도 설정할 수 있습니다 .다음을 사용하여 특정 명령이 기록에 저장되지 않도록 방지
HISTCONTROL
그리고/또는HISTIGNORE
.HISTCONTROL
로 설정하면ignorespace
쉘이 공백으로 시작하는 명령줄을 저장하지 않도록 지시합니다.HISTIGNORE
기록에 저장되지 않는 명령 패턴을 포함할 수 있습니다. 예를 들어, 또는 공백 및 그 이후의 내용HISTIGNORE='ls:ls *'
만 포함하는 줄 은 저장되지 않습니다.ls
ls
"기억 상실" 셸의 경우 셸을 열 때 이러한 설정 중 하나를 수동으로 적용하거나 일부 셸 시작 스크립트에서 설정해야 합니다.
한 가지 옵션은 다음과 같이 생성하는 것입니다 ~/.bashrc.nohist
.
# include the standard startup files as --rcfile will override them
if [ -f /etc/bash.bashrc ] ; then
. /etc/bash.bashrc
fi
if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi
# disable history completely
HISTSIZE=0
# disable the history file
unset HISTFILE
# we could even set a reminder in the prompt
PS1="[nohist] $PS1"
그런 다음 쉘이 시작되도록 예약하십시오 bash --rcfile ~/.bashrc.nohist
. 취향에 맞게 스크립트를 조정하세요.
답변2
기록을 기록하지 않으려면 unset HISTFILE
현재 세션에 들어갈 수 있습니다(bash의 경우).