History Command

Command line에서 명령을 실행하면 해당 명령이 기록에 남는다. 이 기록을 살펴보는 명령이 history다.

설정

이 설정은 bash기준이며 다른 쉘에서는 약간 다를 수 있다.1

export HISTTIMEFORMAT='%F %T '              # 로그에 날짜와 시간 출력
export HISTIGNORE="pwd:ls:ls -ltr:"         # pwd, ls, ls -ltr명령은 로그에 기록하지 않는다.
export HISTCONTROL=ignorespace              # 명령 실행시 처음 스페이스가 포함되면 로그에 기록하지 않는다.
export HISTCONTROL=ignoredups               # 명령이 중복되면 무시 (pwd를 연속으로 여러번 입력하면 로그에는 pwd하나만 기록된다)
export HISTCONTROL=erasedups                # 중복로그를 삭제하고 최근로그만 남긴다.
export HISTSIZE=450                         # 저장할 로그 개수 지정 (0을 지정하면 history 기능이 disable된다)
export HISTFILESIZE=450                     # 저장할 로그 개수 지정
export HISTFILE=/root/.commandline_warrior  # 히스토리 로그 파일 변경

사용

References


  1. ksh은 안된다. 꼼수로 다음과 같이 사용한다. PS1='$(printf "%(# %D %T )T" | read -s)$ ' [return]
comments powered by Disqus