웹개발 및 최신 테크 소식을 전하는 블로그, 웹이즈프리

HOME > linux

.bashrc, .bash_profile, .zshrc 환경 변수 설정 및 사용하는 방법

Last Modified : 2023-10-30 / Created : 2022-10-07
8,419
View Count
개발 환경을 구축할 경우 다양한 목적으로 외부 변수 설정이 필요합니다. 만약 Mac이나 Linux 배포에서 로컬 개발 환경 구축시 환경 변수를 설정해야한다면? 이 경우 다른 환경과의 차이점과 방법에 대하여 간략하게 알아보려고 합니다.



! 환경 변수 설정의 목적


먼저 개발 환경의 환경 변수는 여러 목적으로 사용됩니다. 특히 Git 등의 형상관리가 사용되는 개발 환경이라면 보안에 필요한 토큰 등의 값들은 대부분 형상 관리에 포함되지 않도록 외부 환경 변수 설정에 담아 많이 사용되고 또는 env 파일을 사용하여 로컬에서만 사용 가능한 dotenv 등의 라이브러리를 사용할 수도 있죠.

아래는 Mac에서의 환경 변수 설정 방법을 알아봅니다. 참고로 Windows의 경우 환경변수를 설정하는 방법이 제일 편리한 GUI를 제공하므로 가장 쉽고 간단합니다. 그리고 WSL 2 또는 리눅스 환경의 경우 동일하게 아래와 같이 Mac처럼 .bashrc 파일 등의 방법으로 변수를 선언하면 됩니다.



# Mac terminal 또는 리눅스에서 환경 변수 설정하기


Mac terminal 또는 리눅스 배포 환경에서는 아래와 같이 .bashrc를 포함해 몇 가지 방법이 더 사용됩니다.

.bashrc
.bash_profile
.zshrc


위 파일들은 모두 사용자의 home 디렉토리에 위치해 있습니다. cd ~를 사용하여 이동 후 원하는 파일에 변수를 선언 후 사용하면 됩니다. 만약 위의 파일이 없을 경우 touch 등의 명령어로 파일을 먼저 생성하여 사용해야 합니다.

[ Tip ]
.bash_history 파일도 홈 디렉토리에 존재하는데 내용을 확인해보면 입력했던 명령어들의 히스토리가 담긴 것을 알 수 있습니다.

여기서 .bashrc와 .bash_profile의 차이점은 무엇일까요? .bash_profile은 로그인 통해 실행된 경우에 실행되는 스크립트이며 이와 달리 .bashrc 새로운 터미널을 열 경우마다 실행되게 됩니다. 상황 및 목적에 따라 각각 사용하면 됩니다.


! .zshrc를 사용해야하는 경우


만약 terminal을 열었을 때 터미널창에 - zsh와 같이 표기된 경우 기본 쉘이 zsh로 사용된 경우입니다. 이 때는 .bash_profile 대신에 .zshrc를 사용하여 변수 선언하여 사용하도록 합니다. 파일이 없다면 동일하게 .zshrc 파일을 생성하도록 합니다.
$ touch .zshrc
$ vim .zshrc

파일 생성 후 필요한 변수를 선언해야 합니다. 아래와 같이 특정 이름의 변수를 만들어볼 수 있습니다.
MY_NAME="WEBISFREE.com"
MY_CUSTOM_PATH="/path/to/my/site"

여기서는 변수명 MY_NAME 그리고 MY_CUSTOM_PATH 두 개를 생성하였습니다.


.zshrc 파일 저장 후 재시작하기


파일 생성 후 저장까지 끝났다면 잘 적용되었는지 확인이 필요하겠습니다. 확인하기 전에 재시작이 필요할 수 있습니다. 아니면 아래와 같이 해당 파일을 다시 불러옵니다.
$ source ~/.zshrc

재시작이 끝났다면 선언된 변수가 잘 사용되는지 확인이 필요하겠죠 ~ 다시 변수를 읽고 사용할 경우에는 아래와 같이 선언하여 사용이 가능합니다. 아래는 MY_NAME이라는 변수를 출력해 결과를 알아봅니다.
echo ${MY_NAME}

or

echo $MY_NAME

위의 두 방법 다 사용 가능합니다. 실행해보니 아래와 같이 출려되었습니다.
// Result
WEBISFREE.com

예상대로 잘 동작하는 것을 확인할 수 있었습니다.

여기까지 Mac terminal 및 리눅스 에서의 환경변수 선언 및 사용 방법을 간략히 알아봤습니다.

Previous

[리눅스] linux history 명령어 알아보기

Previous

[리눅스] 서버 재시작시 자동으로 service 시작하는 방법