사용자별 시작 파일과 초기화 파일의 차이
사용자별 시작 파일과 초기화 파일은 사용자의 환경과 세션 설정을 정의하는 데 사용되며, 사용자의 홈 디렉터리에 위치합니다. 이들 파일은 쉘의 동작을 사용자가 원하는 방식으로 조정할 수 있게 해줍니다. 주요 차이점은 이 파일들이 로그인 쉘 세션과 비로그인 쉘 세션에서 언제 실행되는지에 있습니다.
사용자별 시작 파일: ~/.bash_profile
, ~/.profile
로그인 쉘에서 사용되며, 주로 환경 변수 설정, 스타트업 프로그램 실행 등 사용자의 로그인 세션에 필요한 전반적인 환경 구성을 합니다.
사례: 사용자가 원격으로 서버에 SSH를 통해 접속하거나, 콘솔에서 직접 로그인하면 ~/.bash_profile
또는 ~/.profile
이 실행됩니다. 사용자가 여기에 다음과 같은 내용을 추가할 수 있습니다:
# ~/.bash_profile
export PATH="$HOME/bin:$PATH"
export EDITOR="vim"
이 사례에서, 사용자는 자신의 bin
디렉터리를 시스템의 PATH
환경 변수에 추가하고 기본 텍스트 에디터로 vim
을 설정하고 있습니다.
사용자별 초기화 파일: ~/.bashrc
비로그인 쉘에서 사용되며, 새로운 터미널 창이나 쉘 스크립트 실행 시 사용자의 쉘 세션에 적용됩니다.
사례: 사용자가 그래픽 인터페이스에서 새 터미널 창을 열 때마다 ~/.bashrc
가 소스됩니다. 이 파일에서 사용자는 alias 설정이나 프롬프트 사용자화 등을 할 수 있습니다:
# ~/.bashrc
alias ll='ls -la'
PS1='\u@\h:\w\$ '
여기에서, 사용자는 ll
이라는 alias를 설정하여 ls -la
명령을 빠르게 실행할 수 있게 하였고, 쉘 프롬프트를 사용자 이름, 호스트 이름, 현재 디렉터리로 표시되도록 사용자화하였습니다.
차이점
~/.bash_profile
(또는~/.profile
)는 주로 로그인 쉘 세션에 사용되어 사용자가 로그인할 때 한 번 실행됩니다.~/.bashrc
는 비로그인 쉘 세션에 사용되어 새 터미널 창이나 쉘 스크립트 실행 시마다 실행됩니다.
일반적으로 ~/.bash_profile
은 ~/.bashrc
를 소스하는 코드를 포함하여 로그인 쉘 세션에서도 비로그인 쉘의 설정을 사용할 수 있도록 합니다.
# ~/.bash_profile
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
정리
사용자별 시작 파일과 초기화 파일은 사용자가 로그인 쉘 세션과 비로그인 쉘 세션을 시작할 때 각각의 환경 설정을 제공합니다. 이 파일들을 통해 사용자는 환경 변수, alias, 함수 등을 정의하여 쉘 환경을 사용자화할 수 있습니다.
'Linuxpia > 리눅스 사용 팁' 카테고리의 다른 글
[리눅스 팁] 리스트 형태로 명령 실행하기 (48) | 2024.04.20 |
---|---|
설정 파일 다시 읽어들이기 (64) | 2024.04.17 |
로그인 쉘(login shell)과 비로그인 쉘(non-login shell) (47) | 2024.04.15 |
리눅스 쉘에서 시작 파일과 초기화 파일, 그리고 클린업 파일 (40) | 2024.04.14 |
쉘의 내장 명령어(builtin commands)는 어떤 것들이 있나요? (40) | 2024.04.13 |