모든 프로그램이 읽는 상태
환경 변수는 실행 중 모든 프로세스가 읽을 수 있는 키 / 값 쌍. $HOME, $PATH, $USER, $LANG 다 — 프로그램 동작 방식을 바꿔. printenv 가 전부, echo $VAR 가 하나.
set / export / unset
VAR=value— 이 shell 안에서만.export VAR=value— 모든 자식 프로세스로 전달.unset VAR— 제거.VAR=value cmd— 한 번만 설정.HTTPS_PROXY=... curl ...가 대표.
왜 export 가 중요한가
export 없으면 값이 현재 shell 에만 살아. python script.py 띄워서 스크립트가 os.environ['VAR'] 읽으면 빈 값. 도구가 잡으려면 항상 export.
네가 만질 변수들
$PATH— 실행파일 lookup.$HOME— 홈.$EDITOR—git commit가 띄우는 거 (nvim,code -w,cursor -w등).$PAGER—man이 쓰는 거 (less -R).$LANG/$LC_*— locale, character set.$TERM— 터미널 타입.
어디서 설정?
인터랙티브 → ~/.zshrc. 로그인 전용 → ~/.zprofile. 다음 레슨에서 다 풀어줘. 일단 둘 중 하나가 정답.