본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
셸 변수를 환경 변수로 내보내 자식 프로세스에 물려주는 bash 내장 명령
  • 경로 : bash 내장 명령 (type export 로 확인)

셸에서 NAME=값 으로 만든 변수는 셸 변수라 그 셸 안에서만 쓰인다. export 를 붙이면 환경 변수가 되어 그 셸에서 실행하는 프로그램과 하위 셸에도 전달된다. 인자 없이 쓰면 export 된 변수 목록을 보여 준다.

$ export 변수                # 이미 있는 셸 변수를 환경 변수로
$ export 변수=값             # 선언과 동시에 내보내기
$ export -p                  # export 된 변수 목록(declare -x 형식)
$ export -n 변수             # 환경 변수 표시를 지워 셸 변수로 되돌린다
$ export -f 함수             # 셸 함수를 내보낸다
  • -p : 내보낸 변수 전체를 declare -x 이름="값" 형식으로 출력한다. 인자 없이 export 만 쓴 것과 같다
  • -n : 변수를 지우지 않고 내보내기 속성만 없앤다. 값은 셸 변수로 남는다
  • -f : 이름을 변수가 아니라 셸 함수로 본다

변수 관련 명령 비교

편집 원본 편집
명령 하는 일
export 셸 변수를 환경 변수로 만든다. 인자가 없으면 내보낸 변수만 보여 준다
set 셸 변수와 환경 변수, 함수를 모두 출력한다. 선언된 셸 변수 전부를 확인하는 명령이다
env, printenv 환경 변수만 출력한다
unset 변수를 지운다
chsh 로그인 셸을 바꾼다. 변수와 관계없다
$ NAME=itwiki
$ bash -c 'echo $NAME'        # 하위 셸에는 전달되지 않는다

$ export NAME
$ bash -c 'echo $NAME'        # 환경 변수가 되어 전달된다
itwiki

$ export PATH=$PATH:/opt/app/bin   # PATH 에 디렉터리를 더한다
$ export -p | grep NAME
declare -x NAME="itwiki"
  • 로그인할 때마다 적용하려면 ~/.bash_profile 이나 /etc/profile 에 export 줄을 넣는다 → 리눅스 환경 변수