외워두면 편리한 환경 변수들

프로그래밍을 하거나 컴퓨터 관리 작업 따위를 하면서 파일이나 폴더에 관한 경로 문제는 다루기가 참 껄끄럽다. 특히 프로그래밍을 할 때에는 파일이나 폴더에 관해서만큼은 정확하고 세심해야 한다고 생각하기 때문에 어떤 기준이 필요하다고 개인적으로 생각한다.

적어도 몇 가지 디렉터리에 관해서는 확실히 해두면 편리하지 않을까라는 생각에서 우연히 환경 변수들을 조사해보기 시작하게 되었다. 환경 변수들 가운데서는 우리가 전혀 모르고 있었거나 기억에서 사라진 변수들도 꽤 있다.

%WINDIR%와 %SYSTEMROOT%: 현재 실행 중인 Windows 운영 체제가 설치된 경로를 저장하는 환경 변수이다. 여기에는 설치된 파티션을 가리키는 드라이브 문자도 같이 포함된다. 이 변수를 기준으로 System32 폴더에는 매우 손쉽게 접근할 수 있을 것이다.

%PROGRAMFILES%: 현재 실행 중인 Windows 운영 체제와 직접 관련이 있는 Program Files 폴더에 대한 경로를 저장하는 환경 변수이다. %WINDIR% 변수와 마찬가지로 설치된 프로그램에 대한 손쉬운 접근을 하고 싶다면 이 변수를 이용하면 된다.

%HOMEDRIVE%: 현재 로그인한 사용자의 프로파일 디렉터리가 위치한 파티션 드라이브의 문자를 저장하는 환경 변수이다. C:, D: 같은 값을 반환한다.

%SYSTEMDRIVE%: 현재 실행 중인 Windows 운영 체제가 설치된 파티션의 드라이브 문자를 저장하는 환경 변수이다. C:, D: 같은 값을 반환한다.

%USERPROFILE%: Documents And Settings 폴더 아래의 현재 로그인한 사용자의 프로파일 디렉터리 경로를 저장하는 환경 변수이다.

%ALLUSERSPROFILE%: 새로운 사용자를 생성하거나 여러 사용자에 걸쳐서 공통되는 내용을 저장하는 공용 사용자의 프로파일 디렉터리 경로를 저장하는 환경 변수이다.

%COMSPEC%: cmd.exe 프로그램의 경로를 %WINDIR% 등의 변수로 일일이 찾지 않아도 이 변수 하나면 바로 가리킬 수 있다.

%APPDATA%: 현재 로그인한 사용자의 프로파일 디렉터리 밑의 Application Data 폴더에 대한 경로를 저장하는 환경 변수이다.

%COMMONPROGRAMFILES%: Common Program Files 폴더에 대한 디렉터리 경로를 저장하는 환경 변수이다.

%LOGONSERVER%: 현재 로그인한 서버의 UNC 경로나 Active Directory 경로 등을 저장하는 환경 변수이다.

%NUMBER_OF_PROCESSORS%: 시스템에 장착된 CPU 코어의 수를 저장하는 환경 변수이다.

%OS%: 기본적으로 Windows_NT 라는 문자열을 반환한다.

%PATH%: 따로 설명하지 않아도 너무 유명한 환경 변수이다. 명령어 해석기나 Shell 실행 등에서 검색할 기본 경로들을 이곳에 넣어주어도 되고 반대로 세미콜론을 토큰 분할자로 사용하여 각각의 경로를 찾을 수도 있다.

%PATHEXT%: %PATH%로 검색하고자 하는 파일의 유형들을 이곳에서 설정하면 된다. 주로 실행 파일의 확장자들을 이곳에 배치시켜두는 것이 일반적이다.

%PROCESSOR_ARCHITECTURE%: 프로세서의 아키텍처를 설명하는 문자열을 저장하는 환경 변수이다. 우리가 사용하는 컴퓨터들을 기준으로 해보면 주로 x86이라는 문자열을 반환할 확률이 높다.

%PROCESSOR_IDENTIFIER%: 프로세서 식별 문자열을 저장하는 환경 변수이다.

%PROCESSOR_LEVEL%과 %PROCESSOR_REVISION%: 프로세서의 기타 세부 정보들을 저장하는 환경 변수들이다.

%PROMPT%: 명령 프롬프트의 프롬프트 서식을 가져오거나 설정할 수 있는 환경 변수이다.

%TEMP%와 %TMP%: 현재 사용자에게 할당된 임시 디렉터리 경로를 저장하는 환경 변수들이다.

%ERRORLEVEL%: 어떤 프로그램을 실행하고난 직후 그 프로그램이 반환한 코드 값을 저장하는 환경 변수이다.


환경 변수들을 쭉 살펴보면서 상당히 편리하고 유리한 것들이 많다는 것을 알 수 있다. 그런데 환경 변수에는 놀랍게도 두 가지 맹점이 있다. 첫 번째는 일부 환경 변수들은 사용자나 관리자에 의해서 임의로 편집될 수 있다는 것과 두 번째는 정식으로 Windows 운영 체제를 설치하여 구동한 환경이 아닌 Windows Preinstallation Environment에서는 위에서 언급한 환경 변수들을 사용할 수 없다.

댓글 남기기