리눅스 bashrc
IT위키
더 많은 작업
- bash 셸이 새로 뜰 때마다 읽어 실행하는 사용자별 설정 파일
- 위치 : ~/.bashrc (사용자마다 홈 디렉터리에 있다). 모든 사용자에게 적용하는 전역 파일은 /etc/bashrc(데비안·우분투 계열은 /etc/bash.bashrc)
- 새 사용자를 만들면 /etc/skel/.bashrc 가 홈 디렉터리로 복사된다 → 리눅스 사용자 관리
- 이름의 rc 는 run commands 의 줄임말이다
- 별칭(alias) → 리눅스 alias
- 셸 함수
- 프롬프트 모양(PS1), 셸 옵션(set -o, shopt)
- umask 같은 셸마다 적용할 설정
명령줄에서 alias 로 만든 별칭은 지금 셸에서만 유효하고 로그아웃하면 사라진다. 다음 로그인에서도 계속 쓰려면 ~/.bashrc 에 적어 둔다.
- 대화형 비로그인 셸(터미널 창을 새로 열거나 셸에서
bash를 실행할 때)이 시작될 때마다 읽는다 - 로그인 셸은 ~/.bashrc 가 아니라 ~/.bash_profile 을 읽는다. 대부분의 배포판은 ~/.bash_profile 안에서 ~/.bashrc 를 불러오도록 해 두었으므로 로그인할 때도 결국 적용된다
# ~/.bash_profile 의 기본 내용
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
ll 과 rm 의 별칭을 영구히 등록한다.
$ vi ~/.bashrc alias ll='ls -l' alias rm='rm -i' $ source ~/.bashrc # 또는 . ~/.bashrc - 다시 로그인하지 않고 바로 적용 $ alias alias ll='ls -l' alias rm='rm -i'
| 파일 | 읽는 때 | 주로 넣는 것 |
|---|---|---|
| ~/.bash_profile | 로그인할 때 한 번(로그인 셸) | PATH 같은 환경 변수, 로그인 때 실행할 프로그램 |
| ~/.bashrc | 셸이 새로 뜰 때마다 | 별칭(alias), 셸 함수, 프롬프트 |
| ~/.bash_logout | 로그아웃할 때 | 임시 파일 지우기 같은 정리 작업 |
| ~/.bash_history | 설정 파일이 아니다 | 입력한 명령 기록. 로그아웃할 때 덧붙여 저장된다 |
- ~/.bash_history 에는 명령 기록만 쌓이고, 거기 alias 명령이 남아 있어도 다음 로그인 때 실행되지 않는다