터미널 사생활 보호 모드
!
경고: 이 글이 작성된 지 365일이 넘었습니다. 글의 정보가 오래되어 부정확할 수 있습니다.어쩔 땐 터미널 기록에 저장되기 싫은 명령문을 실행해야 될 때가 있습니다. 예를 들어, GPG 키를 관리하는 명령어들은 기록에 저장되면 안 되겠죠. 만약 그렇다면 다음 스니펫이 도움이 될 수 있습니다.
만약 zsh
를 사용하신다면 다음 코드를 .zshrc
에다, 아니면 bash
를 쓰신다면 .bashrc
(또는 .bash_profile
)에다가 삽입하세요:
function incognito() {
unset HISTFILE
export PROMPT='[INCOGNITO] %n@%m %1~ %# '
}
사용하시는 터미널에 따라서 PROMPT
대신 PS1
을 설정하셔야 될 수도 있습니다. 여기에 표시한 PS1
프롬프트는 맥OS의 기본 설정값에서 빌려 왔습니다. 필요하시다면 OS 기본 설정값이나 취향에 맞게 수정하세요.
이제 incognito
를 입력하면, 현재 터미널 세션이 기록 파일에 저장되지 않습니다. 즐겁게 코딩하세요!
이 방식이 어떻게 작동하는지 궁금하시다면, 꽤 간단합니다. 터미널은 기록 파일을 사용하여 사용 기록을 저장하는데, 예로 .bash_history
나 .zsh_history
에 이전에 사용했던 명령문을 저장하여 history
명령이나 Ctrl-R 키(명령 기록 반전 탐색)로 검색하여 다시 불러올 수 있게 합니다. 이는 HISTFILE
이란 변수에 저장되는데, 이를 해제해주면 터미널이 이 기록 파일을 찾지 못하여 현재 세션이 저장되지 않습니다.