bash를 사용하고 있습니다. 내 명령 기록을 탐색하려면 history
동일한 이름의 Gnu 프로그램을 호출한다고 생각 하는 명령을 호출합니다. (나는 더 나은 bash 특정 방법이 있는지 모르겠다).
내 .bashrc에는 현재 export PROMPT_COMMAND='history -a'
실행중인 여러 bash 세션의 기록을 보존 하는 줄 이 있습니다.
히스토리를 수행하면 현재 524 개의 항목 만 표시됩니다. 이 구성 가능합니까? 나는 이것을 2000보다 훨씬 더 큰 숫자로 늘리고 싶습니다.
답변
우선, history
이다 bash는 특정 방법은 없음 더. 이 history
명령은 bash 내장으로 실행하여 볼 수 있습니다.
$ type history
history is a shell builtin
이제 기억하는 명령의 수는 HISTSIZE
변수에 의해 제어됩니다 . 큰 숫자로 설정하려면이 줄을 추가하여 .profile
(이 것보다 더 나은 곳입니다 이유를 .bashrc
참조하십시오 여기가 ) :
export HISTSIZE=2000
이제부터는 history
마지막으로 실행 한 2000 개의 명령을 반환합니다.
답변
그렇습니다 man bash
.
HISTSIZE-명령 기록에서 기억할 명령 수
그러나 Readline
의 변수가 있습니다.history-size
히스토리 목록에 저장된 최대 히스토리 항목 수를 설정하십시오. 0으로 설정하면 기존 기록 항목이 삭제되고 새 항목이 저장되지 않습니다. 0보다 작은 값으로 설정하면 히스토리 항목 수가 제한되지 않습니다. 기본적으로 히스토리 항목 수는 제한되지 않습니다.
당신은 설정할 수 있습니다 history-size
와 함께 HISTSIZE=1000
, bind 'set history-size 1000'
또는에서 다음과 같은 라인 ~/.inputrc
:set history-size 1000
예 :
HISTSIZE=1000
bind 'set history-size 0'
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 0
history # prints nothing
bind 'set history-size 0'
HISTSIZE=1000
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 1000
history # prints 13 echo $HISTSIZE\n14 bind -v | grep history-size\n15 history
history-size
이후 사용 가능 bash-4.0-alpha
: CHANGES
답변
HISTSIZE
변수 지시는 얼마나 많은 명령을 실행 역사에 보관되어 HISTFILESIZE
실행중인 역사에서 많은 명령은 쉘이 종료하면 저장되는 방법을 결정합니다.