bash 기록이 추가되었지만 histappend가 꺼져 있습니다


8

나는 우분투 10.4에 있고 내 껍질은 bash입니다. 그놈 터미널을 여러 개 열고 닫으면 히스토리가 올바르게 추가됩니다. 내가 그것을 입력 shopt하면 다른 것들 중에서 말합니다 :

histappend      off

추가 동작이 구성된 위치를 아는 사람이 있습니까?


1
우분투 -10.10 이후 'ubuntu-10.04-lts'태그를 아직 태그하지 않았습니다. 나는 그것이 Meerkat라는 이름을 지어야한다고 들었습니다.
quack quixote

1
BTW, 맑은 내 bash는 쉘의 모든 쇼 histappend ... 아니 비틀기 아직 ... 당신은 당신의 불통 한 bash는 이미 구성을?
quack quixote

@quack : 고마워, 항상 그렇듯이 내 시간보다 앞서있다 ;-)
Ludwig Weinzierl

@quack :이 설치를 여러 번 업그레이드 했으므로 100 % 확실하지 않습니다. 나를 위해 histappend가 켜져 있는지 여부는 중요하지 않습니다. 역사는 항상 추가됩니다. 내가 정말로 궁금한 것은 이것이 왜 일어나는가? 당신이 shopt -u histappend 할 수 있고 그것이 여전히 설치에 추가되어 있는지 말해 줄 수 있다면 통찰력이 있습니까?
Ludwig Weinzierl

답변:


1

histappend이것을 제어 할 것으로 예상되는 설정입니다. 그것들은 로그인 쉘이 아니기 때문에 /etc/bash.bash.logout또는 에서 진행중인 일이 아닙니다 ~/.bash_logout. 를 입력하여 트랩이 설정되어 있는지 확인하십시오 trap -p. 또한 echo $PROMPT_COMMAND무언가가 일어나고 있는지 확인하십시오.


echo $ PROMPT_COMMAND는 echo -ne "\ 033] 0; $ {USER} @ $ {HOSTNAME} : $ {PWD / $ HOME / ~} \ 007"을 반환합니다. trap -p는 아무것도 반환하지 않습니다. 나는 /etc/bash.logout이 없으며 ~ / .bash_logout에는 재기록 기록이 없습니다.
Ludwig Weinzierl

1

bash가능한 한 역사를 추가하려고합니다. 설정하면 histappend항상 내역을 추가 할 수 있습니다. 해제되어 있으면 Enter대화식 bash세션 에서 명령 수만큼 기록이 계속 추가됩니다 > HISTSIZE. 이런 일이 발생하면 기록을 덮어 씁니다.

기록을 명시 적으로 덮어 쓰려면 history -win .bash_logout또는 exit 트랩을 사용할 수 있습니다 .

나는 역사가 어떻게 작동 하는지에 대한 이 답변 에 더 자세하게 게시했습니다 bash.


-1

내 사이트에서 histappend를 설정하는 방법에 대한 간단한 팁을 작성 했지만 귀하의 질문에 대답하기 위해 여기에 게시물을 설명합니다.

shopt를 사용하여 histappend를 'on'으로 구성 할 수 있어야합니다.

실행을 활성화하려면

shopt -s histappend

실행을 비활성화하려면

shopt -u histappend

도움이 되나요?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.