정의
Environment variable (환경변수) 란,
- OS나 SW에서 참조하는 변수들로
- OS나 SW가 동작 (or 실행)에 영향을 주는 값을 가짐.
shell script 나 software들이 각 장비의 환경에 맞게 동작할 수 있도록 해 줌.
종류
Envrionment varible들은 text 형식의 name (or key)과 value를 가지고 있으며, 영향을 미치는 범위에 따라 구분됨.
- 시스템 변수 : 컴퓨터 시스템 전체에 영향을 미침 (해당 시스템에서 동작하는 모든 SW와 이를 이용하는 사용자 모두에게 영향을 줌)
- 사용자 변수 : 특정 사용자의 session에만 영향을 줌. (사용자 별로 다른 설정과 환경을 가질 수 있음)
사용자변수와 시스템변수의 name이 같은 경우, 사용자변수에 우선권이 있음.
Example
OS에서 executable file들의 경로를 PATH
라는 environment variable을 가짐.
다음의 명령어로 환경변수 PATH
의 값을 확인 가능함.
- linux :
echo $PATH
env |grep PATH
printenv |grep PATH
- windows :
- cmd (=command prompt)
echo %PATH%
set PATH
- PowerShell
-
Get-ChildItem Env:
-
- cmd (=command prompt)
SW들도 자신의 동작과 구성을 위해 environment variable들을 사용하는 경우가 많음.
Programming language들도 관련 library등이 위치하고 있는 경로 등을 찾기 위해 특정 environment variable을 사용함. 대표적인 예로 Python이 사용하는 PYTHONPATH
를 들 수 있음.
Windows' Environment Variables
변수 | 내용 |
OneDrive | 현재 컴퓨터의 OneDrive 주소값 |
Path | 컴퓨터에 저장된 경로 |
TEMP | 컴퓨터의 임시 저장 폴더 |
TMP | 컴퓨터의 임시 저장 폴더 |
windir | 윈도우 파일의 저장 경로 |
USERNAME | 사용자 이름 |
OS | 운영체제 이름 |
Linux's Environment Variables
변수 | 내용 |
PATH | 실행 파일 찾는 경로 |
LANG | 프로그램 사용 시 기본 지원되는 언어 |
USER | 현재 사용자 이름 |
GROUP | 현재 사용자 그룹 |
PS1 | 명령 프롬프트 변수 |
HOME | 현재 user의 home directory |
PWD | 현재 working directory |
EDITOR | 기본으로 사용하는 text editor의 실행파일 경로. (nano 또는 vim) |
PAGER | 페이지보기를 해주는 실행파일 경로 (less의 경로) |
환경변수 다루기.
Linux
linux의 경우 export
를 이용하여 새로운 environment variable을 설정하거나 기존의 값을 수정함.
export 변수명=값
설정되어있는 environment variable을 제거하는 방법은 다음과 같음.
unset 변수명
일반적으로 bash에서 ~/.bash_profile
에 위의 export
문을 통해 사용자 변수를 영구적으로 지정하고, /etc/profile
을 사용하여 시스템 변수를 저장함.
Windows
Windows의 경우 command prompt를 기준으로 새로운 environment variable의 설정 및 수정은 다음으로 수행됨.
set 변수명=값
제거는 다음과 같음.
set 변수명=
- 위에서
=
없이 수행할 경우, 해당 변수명의 값을 출력해주므로 주의할 것.
영구적인 환경변수 설정은
- Windows에서는 System 우클릭 등을 통해 시스템 설정 패널로 들어가,
- 해당 패널의 "고급 시스템 설정"에서 "환경변수"를 설정하는 방법이 더 일반적임.
다음은 windows11, 10에 대한 설정방법임 :
2023.07.01 - [개발환경] - [Env] Windows 환경변수 (Environment Variable) 설정 (Windows 11)
2023.07.01 - [개발환경] - [Env] Windows : 환경변수 설정 (Windows 10)
더 읽어보면 좋은 자료
2023.09.30 - [Python] - [Python] 환경변수 접근하기
2023.06.20 - [개발환경] - [Shell] env and Shebang line
https://dsaint31.tistory.com/entry/Python-Module-Search-Path-and-syspath
'개발환경' 카테고리의 다른 글
[Env] PowerShell v7.3.5 (0) | 2023.06.28 |
---|---|
[Env] xterm: Font (0) | 2023.06.26 |
[Env] VSCode : Terminal Font 변경 (0) | 2023.06.21 |
[Shell] env and Shebang line (0) | 2023.06.20 |
[Env] Oh-My-Posh (0) | 2023.06.20 |