Mac에서 환경 변수를 설정하는 위치
명령줄에서 환경 변수는 현재 셸에 대해 정의되며 실행 중인 명령이나 프로세스에 의해 상속됩니다. 기본 셸, PATH, 사용자 홈 디렉터리, 터미널 에뮬레이션 유형, 현재 작업 디렉터리, 히스토리 파일이 있는 위치, 언어 및 현지화 설정, 모든 것을 포함하는 셸 변수를 포함하는 모든 항목을 결정할 수 있습니다. 사용자 정의에서 bash 프롬프트, 색상화된 ls 출력, 터미널 모양 변경, 별칭 등에 이르기까지.
환경 및 셸 변수를 나열하는 방법과 Mac OS X의 명령줄에서 새 환경 변수를 설정하고 추가하는 방법을 살펴보겠습니다. bash 및 zsh 셸 모두에 대해 다룰 것입니다.
Mac OS X에서 bash의 현재 환경 및 셸 변수 표시
빠르게 환경 변수 목록을 가져오려면, bash와 함께 다음 명령을 사용할 수 있습니다.
printenv
zsh에서 환경 변수를 나열하려면 다음 명령을 사용하십시오. env
또는 선택적으로:
echo $ENV_VAR
쉘 변수의 전체 목록을 보려면 'set' 명령도 실행할 수 있습니다.
세트
이러한 명령의 출력은 길 수 있으므로 less 또는 more 명령을 통해 출력을 파이프하는 것이 좋습니다.
macOS 명령줄에서 zsh로 환경 변수 설정
zsh 셸은 다음 위치의 사용자 홈 디렉토리에 있는 zshenv 파일을 통해 환경 변수를 설정합니다.
~/.zshenv
따라서 nano, vim 등으로 해당 파일을 수정하거나 echo를 다음과 같이 사용하여 zsh 환경 변수를 추가할 수 있습니다.
echo 'export ENV_VAR=예제' >> ~/.zshenv
예를 들어:
echo 'JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshenv
bash를 사용하여 Mac OS X 명령줄에서 환경 변수 설정
Mac은 기본적으로 bash 셸을 사용하므로 사용자 디렉토리 .bash_profile에서 환경 변수를 설정할 수 있습니다. 활성 사용자 계정의 경우 해당 파일의 경로는 다음 위치에 있습니다.
~/.bash_profile
쉘을 변경했거나 사용 중인 쉘이 확실하지 않은 경우 사용 중인 쉘을 표시하는 echo $SHELL 명령을 실행하여 언제든지 확인할 수 있습니다. 여전히 OS X 기본 bash 셸을 사용하고 있다고 가정하므로 nano로 .bash_profile을 수정하여 새로운 환경 변수를 추가할 것입니다. 원하는 경우 vi, emacs 또는 다른 텍스트 편집기를 사용할 수 있습니다. 하지만 간단함을 위해 nano를 다루겠습니다.
나노 텍스트 편집기 내에서 .bash_profile을 열어 시작:
nano .bash_profile
환경 변수와 셸 변수를 새 줄에 추가할 수 있습니다. .bash_profile 파일에 이미 데이터가 있는 경우 화살표 키와 필요에 따라 키를 반환합니다.
예를 들어 파일의 새 줄에 다음을 추가하여 .bash_profile 내에서 JAVA_HOME 및 JRE_HOME 환경 변수를 설정한다고 가정해 보겠습니다.
export JAVA_HOME=$(/usr/libexec/java_home) 수출 JRE_HOME=$(/usr/libexec/java_home)
이제 끝났다고 가정하고 Control+o(otter의 o)를 눌러 .bash_profile에 대한 변경 사항을 저장한 다음 Control+X를 눌러 nano를 종료합니다.
환경 변수를 변경하거나 추가하려면 셸을 다시 시작하거나 새 셸을 생성해야 합니다.
OS X에서 임시 환경 변수 설정
'내보내기' 명령 자체를 사용하여 bash에서 임시 환경 변수를 설정할 수도 있지만 현재 bash 셸이 활성 상태인 동안만 지속된다는 점을 언급할 가치가 있습니다. 예를 들어 ~/bin/에 임시 경로를 추가하려면 다음 명령을 사용할 수 있습니다.
export PATH=$PATH:~/bin
다시 말하지만, .bash_profile에 포함되지 않고 자체적으로 실행되는 '내보내기' 명령은 임시 설정일 뿐이며 환경 변수는 .bash_profile에 추가하지 않는 한 지속되지 않습니다.
실제로 사용할 새 PATH를 추가하려는 경우 적절한 내보내기 명령을 파일에 배치하여 .bash_profile에 추가해야 합니다.
bash 셸을 넘어 터미널 앱 기본 셸을 bash에서 tcsh, zsh, sh, ksh, fish 또는 다른 대체 셸로 변경한 경우에는 해당 특정 쉘(.tschrc, .cshrc, .profile 등)에 대한 적절한 프로파일 또는 rc 파일을 수정합니다.