항목을 재사용하고 수정할 때 히스토리 편집 기록을 중지하는 방법은 무엇입니까?


20

bash의 일부 인스턴스는 이전 명령을 재사용하고 편집 할 때 명령 기록을 변경하지만 다른 bash는 그렇지 않습니다. 검색하고 검색했지만 기록의 명령이 재사용 및 편집 될 때 수정되는 것을 막는 방법을 찾을 수 없습니다.

이와 같은 질문 있지만 편집중인 기록에 대처하는 방법을 말하는 것 같습니다. 나는 최근에 명령을 재사용 할 때 기록을 편집하는 bash 인스턴스를 발견했습니다. 사용했던 모든 이전 bash 쉘은 재사용 할 때 기록을 변경하지 않도록 구성되었습니다. 명령을 편집하십시오. (아마도 지난 15 년 동안 쉘 역사에 적절한주의를 기울이지 않았을 것입니다 ...)

아마도 그것은 가장 좋은 질문 일 것입니다 : bash에게 절대로 역사를 수정하지 말라고 말할 수 있습니까? 그렇다면 어떻게합니까?


history -p히스토리 파일에 영향을주지 않고 히스토리 확장을 수행 하는 데 사용할 수 있습니다 . history -s실행하지 않고 동일한 작업 을 수행하고 기록에 추가 할 수 있습니다 . HISTIGNORE='start of a command I never want in history.*:command2.*'특정 명령을 기록에서 벗어나도록 할 수 있습니다 .
mikeserv

1
하지 않습니다 set revert-all-at-newline on당신이 당신의 문제를 해결 링크 질문에? 문제를 재현하는 방법을 보여줄 수 있습니까? zsh원하는 내용과 더 일치하는 동작을 사용할 수도 있습니다 .
Stéphane Chazelas

@mikeserv 매뉴얼 페이지를 보면, history -p재사용하고 싶은 모든 명령에 대해해야 할 일이 있습니까? 그렇다면, 그것은 내가 찾고있는 것이 아닙니다. 앞에서 언급했듯이 명령을 재사용하고 편집 할 때 기록을 수정하지 않는 bash 인스턴스를 사용했습니다.
Richard Wiseman

@ StéphaneChazelas 아니오, 나는 revert-all-at-newline내가 필요한 것이 아니라고 생각 합니다. 명령을 편집하고 CTRL-C를 눌러 취소하면 기록에 영향을 미치지 않기를 바랍니다. 히스토리를 수정 하지 않도록 bash를 구성 한 적이 없었 습니다. 이것은 때로는 새로운 설치가 어떤 방식으로 작동하고 때로는 다른 방식으로 동작하는 이유와 관련하여 혼란 스럽습니다. 그런데 명령 재사용시 히스토리를 편집하지 않는 인스턴스 에서 'off'로 설정되어 bind -V | grep revert있음을 나타냅니다 revert-all-at-newline.
Richard Wiseman

2
실제로 이것은와 거의 관련이 없습니다 bash. 그것은 모두 readline에 관한 것입니다. readline라이브러리 에는 다양한 구현 이 있으며 자체 설정 세트 (많은)와 자체 구성 파일이 있습니다. 이것이 설정인지 또는 단순히 구현의 차이인지 확실하지 않지만 bash가 아닌 readline 관련 문서에서 검색해야합니다.
오리온

답변:


9

revert-all-at-newline답 이 나옵니다 . 나는 포함하는 데 필요한 set revert-all-at-newline on내에서 ~/.inputrc사용하지 않기 때문에, 파일 set배쉬 프롬프트에서 영향을 명령했다. (물론 새로운 쉘을 시작해야했습니다.)

또한 존재하는 경우 대신~/.inputrc 로드 된 것으로 나타났습니다. 즉 , 후자에 정의 된 기본값이 더 이상 생성되지 않습니다 . 이 문제를 해결하려면 시작 과 함께 . /etc/inputrc~/.inputrc~/.inputrc$include /etc/inputrc

올바른 방향으로 나를 가리켜 주신 @ StéphaneChazelas에게 감사드립니다.


0

~ / .bashrc에서 추가 할 수 있습니다

shopt -s histappend

고마워,하지만 그것은 내가 겪고있는 문제에 영향을 미치지 않습니다. 방금 확인하고 histappend켜져 있지만 내 기록에는 여전히 이전 명령의 편집 내용이 표시됩니다.
Richard Wiseman

bash 매뉴얼 페이지를 검색했으며 편집 기록에 대한 규칙을 찾았습니다. 선.
Jeff Coleman

되돌리기 - 모든 -에서 - 줄 바꿈 옵션도 있습니다 그 기본값 off로
제프 콜맨
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.