최신 글
2
제목 게시일
26

환경변수를 설정하는 이유

profile
코우
2021-07-28 16:02
조회 수 : 12673

Java나 Tomcat 등 여러 프로그램을 설치할 때 환경변수를 설정하는 것을 보았을 것이다. 
그렇다면 왜 환경변수를 설정하는 것일까? 그 이유를 알아보도록 하자.

바탕화면에 testdir이라는 폴더가 있고 그 안에 test.txt라는 파일이 있다고 가정하자.

reference

 

우리는 이 test.txt을 열기 위해서 해당 디렉토리로 이동 후 클릭하여 파일을 열 것이다. 이 동작은 command line interface(CLI)환경에서 아래의 그림과 동일하다.

reference


만약 파일이 존재하는 디렉토리로 이동을 안하고 바로 파일을 실행하면 어떻게 될까? 아래의 그림과 같이 에러 메세지가 출력된다.

reference


이렇게 해당 파일로 접근하기 위해서는 그 파일이 존재하는 디렉토리로 이동해야하는 불편함이 있다. 만약 어느 경로에서나 test.txt를 열 수 있는 방법은 없을까?

▶  답은 환경변수이다. 


운영체제가 어떠한 명령을 받았을 때의 동작을 보자.
  1. 현재 위치한 디렉토리에 해당 명령어가 있는지 확인한다. (있는 경우 실행하고 없는 경우 2번으로 넘어간다.) 
  2. Path라는 환경변수가 가지고 있는 모든 경로에 대해서 입력된 명령어가 존재하는지 탐색한다. 
  3. 명령어를 발견하면 실행한다. 발견하지 못하면 위의 그림과 같이 에러 메세지를 출력한다.

이제 Path에 등록되어있는 경로들을 확인해보자.
명령어 : path

reference

"PATH="이후에 적힌 경로들이 환경변수에 등록되어 있는 경로들이다. 각 경로들은 ;(세미콜론)으로 구별되어 있으며 이를 기준으로 탐색을 진행한다.


이제 test.txt가 위치한 디렉토리의 경로도 Path에 추가해보겠다. 
이렇게 Path 명령어로 환경변수에 testdir의 경로가 추가된 것을 확인할 수 있다. 

reference


이제 아무경로에서나 test.txt를 열어보자.

reference

환경변수는 프로그램을 설치하면 자동적으로 설정되는 경우도 있고 이렇게 사용자가 직접 설정하는 경우도 있다. 
같은 프로그램을 여러 버전으로 관리해야할 때 환경변수 설정만으로 명령어에 의해 구동되는 버전을 변경할 수 있다.

이렇게 환경변수에 대해서 알아보았다. IDE를 통해서 개발을 한다면 굳이 환경변수를 설정할 필요가 없겠지만 그래도 알아두면 언젠가는 써먹지 않을까 싶다.

 
 
share
twitter facebook kakao naver
댓글