環境変数 | Tsukemai Online

環境変数

OS が提供するデータ共有機能の一つ。


OS 上で動作するタスク (プロセス)がデータを共有するための仕組み。

特に環境変数タスク に対して外部からデータを与え、タスク の挙動・設定を変更する際に用いる。

環境変数 は、UNIX (互換OS や互換環境も含む)、MS-DOSWindows に存在する。


一つの環境変数 は、変数 名とその値をもち、通常「変数 名=値」と表記する。


環境変数 は、各プロセスに付随するデータである。

一つのプロセスが複数の環境変数 をもつことができる。

あるプロセスに付随している環境変数 の総体のことを、環境ということがある。


プロセスは、任意に環境変数 を参照して、各種の情報を取得したり、動作を変更したりすることができる。

また、プロセスは自分の環境において、環境変数 を新規に作成したり、

既存の環境変数 の値を変更したり、環境変数 を削除したりできる。


環境変数 には、システムにより定義されるものとユーザが任意に定義するもの、

ほとんどのプログラム に影響を与えるものと特定のプログラム にのみ影響を与えるものがある。


環境は、親プロセスから子プロセスに複製されて継承 される。

すなわち、子プロセスで環境を変更しない限り、子プロセスの環境は親プロセスのそれと同一の内容である。

また、子プロセスが自分の環境に対して行った変更は、親プロセスの環境に影響しない。


Windows環境変数

[編集] 環境変数 の設定法


MS-DOS と同様の方法の他、コントロールパネルでも設定することができる。

コントロールパネルで設定したものは、それ以降起動されるプロセスで有効となる。また、再起動 後も有効。


コントロールパネルの設定は、システム環境変数 とユーザー環境変数 に分かれている。

コントロールパネルでシステム環境変数 を変更するには、管理者権限が必要。

"path"あるいは"set"コマンドで設定した環境変数 は、そのコマンドを実行したプロンプト上、

及びそこから起動したプロセス上でしか有効ではないため注意が必要である。


[編集] 環境変数 の例

Windows NT 系の例を示す。Windows 9x系では存在しないものもある。


COPYCMD

COPYコマンドのスイッチを指定する。


COMPUTERNAME

コンピュータ 名が設定されている。


CPU , NUMBER_OF_PROCESSORS, PROCESSOR_ARCHITECTURE, PROCESSOR_IDENTIFIER, PROCESSOR_LEVEL, PROCESSOR_REVISION

コンピュータ のプロセッサに関する情報が設定されている。


DIRCMD

DIR コマンドのスイッチを指定する。


HOMEDRIVE

ホームフォルダのドライブ名が設定されている。例: C:


HOMEPATH

ホームフォルダのパス名が設定されている。例: \Documents and Settings\%USERNAME%


OS

OS の種類が設定されている。例: Windows_NT


PATH

コマンド検索パスをセミコロンで区切って指定する。シェル が参照する。


PATHEXT

実行可能ファイルの拡張子 をコロンで区切って指定する。 

 例:.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS ;.JSE;.WSF;.WSH


PROMPT

コマンドプロンプトの形式を指定する。例: $p$g


ProgramFiles

Program Filesフォルダのパス名が設定されている。例: C:\Program Files


SystemDrive

システムドライブ名が設定されている。例: C:


SystemRoot

Windows フォルダのパス名が設定されている。例: C:\WINDOWS


USERDOMAIN

現在のユーザのログオンドメイン が設定されている。

ドメイン のない環境ではローカル コンピュータ にログオンするためCOMPUTERNAMEと同じになる。


USERNAME

現在のユーザのユーザ名が設定されている。


USERPROFILE

現在のユーザのユーザプロファイルフォルダのパス名が設定されている。

 例: C:\Documents and Settings\%USERNAME%


TEMP

一時ファイルを置くディレクトリ を指定する。

 例: C:\Documents and Settings\%USERNAME%\Local Settings\Temp


WINDIR

Windows フォルダのパス名が設定されている。例: C:\WINDOWS