우분투 16.0.4LTS에서 HISTSIZE 변경

우분투 16.0.4LTS에서 HISTSIZE 변경

나는 성공하지 못한 채 HISTSIZE 시스템 전체를 변경하려고 노력해 왔습니다. 나는 다양한 접근 방식을 시도했습니다.

  1. /etc/profile내보내기 HISTSIZE=100 추가
  2. /etc/enviromentHISTSIZE=100 추가
  3. /etc/bash.bashrcHISTSIZE=100 추가

각 사용자의 파일을 변경하고 싶지 않습니다 .bashrc.

답변1

너무 깁니다. HISTSIZE가 변경되는 위치를 확인하세요.

grep HISTSIZE /etc/profile /etc/bash.bashrc ~/.profile ~/.bash_profile ~/.bash_login


HISTSIZE는 단지 환경 ​​변수일 뿐이며, 환경 변수는 여러 곳에서 설정되거나 재정의됩니다. 나는 당신이 bash를 사용하고 있다고 가정합니다 (다른 쉘은 HISTSIZE를 사용한다고 확신하지만 bash는 일반적으로 기본 쉘입니다)

bash/bind.c에서 볼 수 있듯이 기본 HISTSIZE는 500입니다.https://github.com/bminor/bash/blob/d233b485e83c3a784b803fb894280773f16f2deb/lib/readline/bind.c#L2040

사용자가 로그인하면 상당히 복잡한 프로필 트리가 로드됩니다. 이에 대한 훌륭한 게시물은 다음과 같습니다.https://blog.flowblok.id.au/2013-02/shell-startup-scripts.html

게시물의 관련 차트는 다음과 같습니다. 여기에 이미지 설명을 입력하세요.

이제 일반적인 대화형 원격(보라색 선) 셸을 실행하면 다음 파일이 구문 분석되는 것을 볼 수 있습니다.

  • /etc/구성 파일
  • /etc/bash.bashrc
  • ~/.프로필
  • ~/.bash_profile
  • ~/.bash_login

이러한 파일은 모두 HISTSIZE 변수를 설정하거나 변경할 수 있습니다.

이제 다음을 입력하여 현재 HISTSIZE 변수를 읽을 수 있습니다.echo $HISTSIZE

결과가 빈 행이면 설정되지 않았음을 의미하며 기본값인 500을 적용해야 합니다.

다른 금액은 위 목록의 다른 스크립트에 의해 설정됩니다. 다음과 같이 HISTSIZE를 greping하여 빠르게 확인할 수 있습니다. grep HISTSIZE /etc/profile /etc/bash.bashrc ~/.profile ~/.bash_profile ~/.bash_login

관련 정보