環境変数とは

バッチファイルは、事前に用意されているコマンドやアプリケーションを、あらかじめ記述したコマンドの手順に従って実行することが主な役割ですが、状況に依存した条件を処理に組み込みたい場合は、内容が複雑になり、プログラミングのような構造的な流れが発生します。このような、状況に依存して実行するコマンドや値を選択しなければならないバッチ処理を実現するには、利用者との対話やコマンドの結果なる値などをバッチファイルの実行時に取得しなければなりません。

バッチファイルの記述時ではなく、実行時に何らかの値を得るには、その値を保存する方法が必要になります。バッチファイルに直接記述された整数や文字列は、何度実行してもその値が変化することはありません。これに対して、実行時に状況に従って渡される環境変数と呼ばれる動的な情報があります。環境変数は、一般的なプログラミング言語における変数のようなもので、あらかじめWindowsに設定されているものもあれば、時刻など動的に変化する値も存在します。

主に、環境変数は複数のプロセスの間で設定を共有するために用いられています。特別なフォルダへのパスや、プログラムの動作を決定する値の設定などが含まれます。環境変数は、Windowsの「システムのプロパティ」から編集することもできます。Windows Vistaの場合「システムのプロパティ」を開くには「コントロールパネル」の「システム」を開いて「システムの詳細設定」を選択します。XPでは、マイコンピュータを右クリックしてプロパティを開ければ「システムのプロパティ」が表示されます。

図01 システムの詳細設定

次に、「システムのプロパティ」ダイアログが開かれるので[詳細設定]タブを選択して、[環境変数]ボタンを押します。

図02 システムのプロパティ

これで「環境変数」ダイアログが開きます。上部の「~ のユーザー環境変数」グループにあるリストには、ログオンしているユーザーに関連付けられている環境変数が列挙されています。これをユーザー環境変数と呼び、現在ログオンしているユーザーにのみ適用されます。

下部の「システム環境変数」グループにあるリストにWindowsに直接関連付けられている環境変数が表示されます。これをシステム環境変数と呼び、すべてのユーザーで共有される設定が保存されます。

図03 環境変数

新しい変数を追加するには[新規]ボタンを押し、既存の変数を編集するには[編集]ボタンを押してください。[削除]ボタンを押すと、選択している変数を削除します。ただし、これらの環境変数は複数のアプリケーションで利用されている可能性があり、不用意に削除すると、一部のプログラムが正常に動作しなくなる可能性があります。注意してください。ユーザー環境変数とシステム環境変数に同じ変数が存在する場合、ユーザー環境変数が優先して使われます。