태그 보관물: command-history

command-history

왜 누군가가 bash에 ‘histappend’를 설정하지 않습니까? 제정신이 된 것처럼 보이며

이것이 무엇을 shopt -s histappend 의미 하는지 알아 낸 후에 는 매우 제정신이 된 것처럼 보이며 이것이 기본값이 아니라는 것에 놀랐습니다. 왜 각 쉘 출구에서 역사를 지우고 싶습니까?



답변

글쎄, histappend설정되지 않은 경우 , 각 쉘 종료시 히스토리가 지워지는 것은 아닙니다. histappendbash를 사용 하지 않으면 시작시 메모리로 histfile을 읽지 않고 ( 작업 중에 새 항목이 추가됨) 쉘 종료시 마지막 HISTSIZE 행이 추가되지 않고 내역 파일에 기록됩니다 (예 : 이전 내용 바꾸기).

예를 들어, histfile에 400 개의 항목이 있으면 bash 런타임 동안 10 개의 새 항목이 추가됩니다. histsize가 500으로 설정되면 새 histfile에 410 개의 항목이 포함됩니다.

이 동작은 더 많은 bash 인스턴스를 병렬로 사용하는 경우에만 문제가됩니다. 이 경우 히스토리 파일에는 마지막 종료 쉘의 컨텐츠 만 포함됩니다.

이것과는 무관 : 프라이버시 문제로 인해 쉘 출구에서 역사를 지우고 싶은 사람들이 있습니다.


답변

역사적 호환성을 위해 추측합니다. 이 histappend옵션은 bash 2.0까지 존재하지 않았습니다.


답변