환경변수는 「프로세스 환경에 속한 변수」 — 자식 프로세스에 자동 전달.
PATH·HOME·USER·LANG 같은 시스템 설정과 사용자 설정이 환경변수로 관리됩니다.
보기.
env — 현재 모든 환경변수.
printenv — 같은 효과.
printenv PATH — 특정 변수만.
echo $PATH도 일반 출력.
설정.
export VAR=value — 그 셸과 자식 프로세스에 적용.
export 없이 VAR=value면 그 셸에만 — 자식이 못 봄.
한 번만.
VAR=value command — 그 명령 실행 동안만 환경변수 설정.
DEBUG=1 ./script.sh 식.
임시 디버깅에 매우 자주.
영구 설정.
~/.bashrc 또는 ~/.profile에 export VAR=value 추가 — 매 셸 시작 시 자동 로드.
또는 시스템 전역은 /etc/environment 또는 /etc/profile.d/에.
위치에 따라 적용 범위가 다름.
한 줄 요약
환경변수는 자식 프로세스에 전달되는 변수.
env·printenv로 보기, export VAR=value로 설정.
한 번만 쓰려면 VAR=value command.
영구는 ~/.bashrc·~/.profile.
더 알아볼 것
- PATH 환경변수의 특별함
- XDG 환경변수 — XDG_CONFIG_HOME 등
- env -i — 깨끗한 환경에서 실행