환경 변수가 무엇일까? 영어로 하면 Environment Variable. 그냥 컴퓨터 내에서 쓰는 광역 변수라고 생각하면 쉽다. 근데 용도는 상수 내지 매크로라고 할 수 있겠다. 프로그램이나 사용자 입장에서는 환경 변수를 읽을 뿐이지 쓸 필요는 없다. 물론 어떤 프로그램은 설치하면서 자동으로 Path 변수에 자기 폴더를 추가하는 경우도 있지만, 그것도 굳이 어떤 값을 저장하려고 한다기 보다 나중에 값을 읽을 때 쉽게 읽으면 좋으니까 추가하는 거다.
Path 변수는 여러모로 중요하다. 커맨드라인이나 쉘에서 어떤 디렉토리에 접근하지 않고도 명령어를 실행할 수 있는 방법을 제공해준다. 예를 들어 C:\abcd\power.exe
라는 실행 파일이 있다고 가정하면, cmd를 열었을 때 cd C:\abcd
를 치고 power
라고 명령어를 쳐야 하지만 환경 변수 Path에 C:\abcd
가 추가되어 있다면 언제든 power
명령을 실행할 수 있다. 같은 명령어가 여러 개 있으면 어찌 되냐고는 묻지마라. 자세히는 모른다.
그 이외에도 다른 변수도 유용하다. 예를 들어 JAVA_HOME 이라는 변수는 JDK의 홈 디렉토리를 가리키는 변수로 이용될 수 있다. 이는 JDK를 이용하려는 다른 프로그램의 수고를 덜어주는 것이다. JDK의 디렉토리가 미래에 언제 바뀔지 모르는 문제도 그냥 관리자가 JAVA_HOME 변수만 제대로 수정해주기만 하면 해결된다. 그렇다면 이 환경 변수를 어떻게 설정하고 편집하는지 알아보자.
기본적으로 환경 변수 편집 창으로 들어가려면 시스템 속성 - 고급 - 환경 변수로 들어가야 한다. 그러나 검색해서 들어가는 게 훨씬 빠르다. 윈도우 7 사용자라면 그냥 시작 메뉴의 검색 창에서 바로 검색할 수 있다. "시스템"과 "계정"의 차이는 권한 차이다. 관리자 권한으로 모든 변수를 관리하려면 "시스템 환경 변수 편집"으로, 그냥 유저 변수만 수정해도 된다면 "계정"으로 들어가자.
시스템 환경 변수로 들어갔다면 이런 창이 뜬다. 무심하고 시크하게 "환경 변수"를 누르자.
그렇다. 내 이름은 태훈임. 환경 변수 목록을 볼 수 있는 창이다. 사용자 변수와 시스템 변수의 차이는 권한의 차이다. 시스템 변수는 모든 사용자가 접근이 가능하지만 사용자 변수는 해당 사용자만 접근이 가능하다. 영문 모를 변수명들이지만, 사실 우리도 모르게 우리 프로그램들이 이런 변수를 활용하고 있다. 변수를 새로이 추가하려면 새로 만들기를, 편집하려면 편집을, 삭제하려면 삭제를. 정말 정직하다.
대망의 편집창. 정말 거지같은 인터페이스다. 유저를 하나도 배려하지 않았다. 엄청 긴 문자열은 그냥 좌우로 커서를 옮겨가며 봐야한다. 유명한 Path 변수를 들여다보면, 경로들이 세미콜론(;)으로 구분지어져서 나열되어 있는 걸 볼 수 있다. 경로를 추가하려면 세미콜론 사이에 적절히 세미콜론을 하나 더 넣어 구분선을 지어주고 안에다가 넣고 싶은 경로를 넣고 확인을 누르면 된다. 다만 편집 창의 확인이 아니라 환경 변수 목록 창의 확인을 눌러야 변경사항이 저장된다. 또한 모종의 이유로 확인을 눌러도 변경사항이 제대로 반영되지 않는 경우가 생기는데, 그럴 때는 재부팅을 하면 된다.
정말 쉽고 간단한 환경 변수 설정법. 감이 오는가?
'프로그래밍' 카테고리의 다른 글
Eclipse CDT Indexer 문제 MinGW로 해결하기 (0) | 2015.06.26 |
---|---|
알라딘 상품 API를 이용해 책 정보 넣어보기 (1) | 2015.04.01 |
[cocos2d-x] 이클립스 CDT 자동완성 기능이 작동하지 않을 때 (0) | 2015.03.24 |
WURFL.js 을 이용하여 웹 사용자의 기기 정보 얻기 (0) | 2015.01.26 |
[번역] 인텔 아키텍처에서 C++ 안드로이드 앱 빠르게 만들기 (0) | 2015.01.24 |