環境 變數
(環境 變數,
英語
:
environment variable
)는
프로세스
가
컴퓨터
에서 動作하는 方式에 影響을 미치는, 動的인 값들의 모임이다.
環境 變數 보기/설정
[
編輯
]
變數들은
命令 줄
위에서, .BAT 擴張字를 가지는 一括 處理 파일, 또는 스크립트 안에서 쓰일 수 있다. 變數 이름 周邊이나 앞에 있는 특별한 記號를 놓아서 參照하는 것이 普通이다.
例를 들어, 도스 또는 윈도 시스템에서 "프로그램을 찾는 基本 經路"를 보여 주려면, 이 命令語를 使用하면 된다:
echo %PATH%
다른 스크립트와 셸 環境에서는 가끔 위와 같은 目的에서라도 다른 記號를 使用한다. 많은 유닉스 셸에서는 흔히 달러 사인이 쓰인다:
echo $PATH
도스
[
編輯
]
도스와 윈도우에서
SET
命令語를 變數 없이 使用하면 모든 環境 變數와 그에 따른 모든 값을 보여 준다.
도스-윈도의 특정한 값에 變數를 設定하려면 다음과 같이 使用하면 된다:
SET
變數
=
값
"SET
變數
="라고만 入力하면, 該當 變數 自體가 지워진다.
유닉스
[
編輯
]
env
,
set
, 그리고
printenv
命令語들은 變數 없이 使用하면 모든 環境 變數와 그에 따른 모든 값을 보여 준다.
env
와 set은 또한 環境 變數를 設定하는 데 쓰일 수도 있으며 자주 셸에 直接 統合되기도 한다. printenv는 變數 이름을 命令語에 單一 變數로 주면 하나의 單一 變數를 印刷하는 데 쓰일 수 있다.
유닉스에서 다음의 命令語들을 使用할 수 있지만 어떠한 셸에서는 자주 依存的으로 쓰인다.
export
變數
=
값
#
Bourne
,
bash
, 그리고 다른 셸에서 쓰임
setenv
變數
값
#
csh
과 關聯된 셸에서 쓰임
豫測 不許의 環境 變數
[
編輯
]
유닉스에서, 變數들은
export
키워드 없이 割當되기도 한다. 이러한 方法으로 變數를 定義하면
set
命令語를 통해 보이기는 하지만 子息 프로세스에 從屬되지는 않는다. 도스와 윈도 環境에서는 이것을 使用할 수 없다.
變數
=
값
例示
[
編輯
]
PATH
: 디렉터리 經路의 目錄. 使用者가 全體 經路를 指定하지 않고 命令을 入力하면 이 目錄을 確認하여 該當 命令語가 經路에 屬하는지를 살펴본다.
HOME
(
유닉스 系列
) 및
USERPROFILE
(마이크로소프트 윈도우): 使用者의
홈 디렉터리
가
파일 시스템
의 어디에 位置해있는지를 指示한다.
HOME/{.AppName}
(
유닉스 系列
) 및
APPDATA\{DeveloperName\AppName}
(마이크로소프트 윈도우): 애플리케이션 設定 貯藏을 위해 使用한다. 윈도우의 境遇 수많은 애플리케이션들이 애플리케이션 設定에
USERPROFILE
을 잘못 使用한다:
USERPROFILE
은
Documents/Pictures/Downloads/Music
와 같은 經路를 使用者가 選擇할 수 있게 許容하는 對話 箱子에만 使用해야 한다. 프로그래밍 目的의 境遇
APPDATA
(여러 裝置 間 共有되는 애플리케이션 設定 照會用),
LOCALAPPDATA
(로컬 애플리케이션 설정용) 또는
PROGRAMDATA
(여러 OS 使用者 間 共有되는 애플리케이션 설정용)을 使用해야 한다.
[1]
TERM
(
유닉스 系列
): 使用되는
컴퓨터 터미널
이나
터미널 에뮬레이터
의 類型을 指定한다. (예:
vt100
또는
dumb
).
PS1
(
유닉스 系列
):
본 셸
및 變種에서 프롬프트가 어떻게 標示될지를 指定한다.
MAIL
(
유닉스 系列
): 使用者의 메일을 發見할 位置를 指定하는데 使用된다.
TEMP
: 프로세스가 臨時 파일을 貯藏할 수 있는 位置이다.
유닉스
[
編輯
]
$PATH
- 콜론으로 區分된 디렉터리 目錄을 包含하며 셸은 이름에 슬래시가 包含되지 않는 命令을 檢索한다.
도스
,
OS/2
,
윈도우
의
%PATH%
變數와 同一하다.
$HOME
- 使用者의
홈 디렉터리
의 位置를 包含한다.
getpwuid
,
getuid
와 같은 C 函數를 통해 現在 使用者의 홈 디렉터리를 찾아낼 수 있으나 다양한 셸 스크립트(및 다른 컨텍스트)에서 便宜를 위해
$HOME
이 자주 使用된다.
$PWD
- 現在 디렉터리의 變數 支店. pwd 命令語를 變數 없이 呼出할 때의 出力과 同一하다.
$DISPLAY
- X1
프로그램이 基本的으로 使用할 디스플레이 識別者를 包含한다.
$LD_LIBRARY_PATH
- 動的 링커
가 있는 수많은 유닉스 시스템에서 다른 모든 디렉터리를 찾기 前에
exec
以後 프로세스 이미지를 빌드할 때 動的 링커가
共有 오브젝트
를 檢索할 對象인 콜론 區分 디렉터리 目錄을 包含한다.
$LANG, $LC_ALL, $LC_...
$LANG
은 基本
로케日
을 設定하기 위해 使用된다. 이를테면 로케日 값이
pt_BR
이라면 言語는 (브라질) 포르투갈語로 設定된다. 各其 다른 地域化 觀點은 個個의
$LC_
- 變數(
$LC_CTYPE
,
$LC_
COLLATE
,
$LC_DATE
等)들에 依해 制御된다.
$LC_ALL
을 使用하면 모든 觀點에 同一한 로케일을 强制하는데 使用할 수 있다.
$TZ
- 時間帶
를 參照한다. 時間帶 自體를 指定하거나 파일을 參照(
/usr/share/zoneinfo
에서)시킴으로써 여러 形式으로 使用이 可能하다.
마이크로소프트 윈도우 XP, 비스타의 基本 環境 變數와 값
[
編輯
]
變數
|
資料값
|
%ALLUSERSPROFILE%
|
(윈도 XP) C:\Documents and Settings\All Users
(윈도 비스타) C:\ProgramData
|
%APPDATA%
|
(윈도 XP) C:\Documents and Settings\{使用者 이름}\Application Data
(윈도 비스타) C:\Users\{使用者 이름}\AppData\Roaming
|
%COMPUTERNAME%
|
{컴퓨터 이름}
|
%COMSPEC%
|
C:\Windows\System32\cmd.exe
|
%HOMEDRIVE%
|
C:
|
%HOMEPATH%
|
(윈도 XP) \Documents and Settings\{使用者 이름}
(윈도 비스타) \Users\{使用者 이름}
|
%PATH%
|
C:\Windows\System32\;C:\Windows\;C:\Windows\System32\Wbem
|
%PATHEXT%
|
(윈도 XP) .COM; .EXE; .BAT; .CMD; .VBS; .VBE; .JS ; .WSF: .WSH
(윈도 비스타) .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
|
%PROGRAMFILES%
|
C:\Program Files
|
%PROMPT%
|
現在 命令 프롬프트 포맷에 對한 코드. 普通 이 코드는 $P$G로 되어 있다.
|
%SYSTEMDRIVE%
|
윈도 XP 루트 디렉터리를 包含하고 있는 드라이브. 普通 C:
|
%SYSTEMROOT%
|
윈도 디렉터리. 普通 C:\Windows로 되어 있으며, 公式的으로는 C:\WINNT이다.
|
%TEMP% 및 %TMP%
|
(윈도 XP) C:\Documents and Settings\{使用者 이름}\Local Settings\Temp
(윈도 비스타) C:\Users\{使用者 이름}\AppData\Local\Temp
|
%USERNAME%
|
{使用者 이름}
|
%USERPROFILE%
|
(윈도 NT 4, 2000) C:\windows\Profile
(윈도 XP) C:\Documents and Settings\{使用者 이름}
(윈도 비스타) C:\Users\{使用者 이름}
|
%WINDIR%
|
C:\Windows
|
各州
[
編輯
]
外部 링크
[
編輯
]