ENVIRON(7)

名称
environ - ユーザ環境

書式
extern char **environ;

解説
環境 と呼ばれる文字列の配列は、 プロセス開始時に execve(2) を呼び出すことによって利用可能になります。 習慣によって、これらの文字列は “name=value” という形を取ります。 以下の名前は多くのコマンドによって利用されます:

BLOCKSIZE
    いくつかのコマンド (最もよく知られている物としては df(1), du(1), ls(1)) で用いられるブロック単位のサイズ。 BLOCKSIZE には、数字を指定することによってバイト単位の値を、 数字の後に ``K'' か ``k'' を指定することによってキロバイト単位の値を、 数字の後に ``M'' か ``m'' を指定することによってメガバイト単位の値を、 数字の後に ``G'' か ``g'' を指定することによってギガバイト単位の値を、 指定することができます。 512 バイトより小さい値や 1 ギガバイトより大きい値を指定しても無視されます。

COLUMNS
    ユーザの好みの端末幅を、コラム位置単位で指定します。 ls(1) や who(1) といったユーティリティが、これを使用し、出力を指定されたコラム数に収めます。 設定されていないもしくは空の場合、ユーティリティは ioctl(2) 呼び出しを使用し、端末ドライバに幅を問い合わせます。

EDITOR
    デフォルトのエディタの名前。

EXINIT
    ex(1), vi(1) が参照する、スタートアップ時のコマンドリスト。

HOME
    login(1) によって、パスワードファイル passwd(5) を元にセットされるユーザのログインディレクトリ。

LANG
    LC_* 変数が設定されていない場合、 setlocale(3) を使用する全てのプログラムを、この変数に指定されたロケールを使うように 設定します。

LC_ALL
    LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, LC_TIME, LANG に優先する値です。

LC_COLLATE
    文字列の順序に使用するロケールです。

LC_CTYPE
    文字のクラス分け (レター、空白、数値等) と、 バイトシーケンスをマルチバイト文字として解釈することに使用するロケールです。

LC_MESSAGES
    診断メッセージに使用するロケールです。

LC_MONETARY
    通貨の入力と整形出力に使用するロケールです。

LC_NUMERIC
    数値の入力と整形出力に使用するロケールです。

LC_TIME
    日付の入力と整形出力に使用するロケールです。

MAIL
    ユーザのメールボックスの場所です。 mail(1) や sh(1) 、その他多くのメールクライアントが、デフォルトの /var/mail の 代わりに用います。

NLSPATH
    LC_MESSAGES が参照するメッセージカタログを探す、ディレクトリのリスト。 catopen(3) を参照してください。

PAGER
    デフォルトのページャプログラム。 mail(1), man(1), ftp(1) などが、使用中のディスプレイよりも長い情報を表示するときに、 この変数で指定されたプログラムを使用します。

PATH
    コロンで区切られたディレクトリの列です。 csh(1), sh(1), system(3), execvp(3) などが、実行ファイルを探すときに検索します。 PATH の初期値は、 login(1) によって、``/usr/bin:/bin'' にセットされます。

PRINTER
    lpr(1), lpq(1), lprm(1) によって用いられるデフォルトのプリンタの名前。

PWD カレントディレクトリのパス名。

SHELL
    ユーザのログインシェルのフルパス名。

TERM
    出力を準備する必要のある端末の種類。 この情報は nroff(1) や plot(1) などの、端末の特殊な機能を駆使するコマンドによって用いられます。 端末タイプのリストは、 /usr/share/misc/termcap (termcap(5)) を参照してください。

TERMCAP
    TERM で指定した端末の機能を記述する文字列、あるいは、文字列が `/' で 始まる場合、termcap ファイルの名前。 下記の TERMPATH, termcap(5) を参照してください。

TERMPATH
    コロンあるいはスペースで区切られた、termcap のパス名の列で、 端末の機能記述を知るために、列挙された順番で検索されます。 TERMPATH を指定していない場合は、 TERMPATH を “$HOME/.termcap:/etc/termcap” に指定している時と同じ結果になります。 TERMCAP がフルパス名を含んでいる場合は、 TERMPATH は無視されます。

TMPDIR
    テンポラリファイルを置くための場所。ほとんどのアプリケーションは “/tmp” か “/var/tmp” を用います。この変数を指定すれば、他のディレクトリを使うようになるでしょう。

TZ  日付を表示する時に使われるタイムゾーン。 通常のフォーマットは、 “/usr/share/zoneinfo” からの相対パス名です。 例えば、コマンド “env TZ=America/Los_Angeles date” は、カリフォルニアの現在時刻を表示します。 より詳しい情報は、 tzset(3) を参照してください。

USER
    ユーザのログイン名。

これ以外の名前も、 sh(1) においては export コマンドと name=value 引数によって、 csh(1) を使用している時には setenv コマンドによって環境に付け加えることができます。 .profile ファイルでしばしばエクスポートされる、 MAIL, PS1, PS2, IFS などのいくつかの sh(1) の変数を変更するのは、自分が何をしているのか十分に理解していない場合には 賢明ではありません。

関連項目
cd(1), csh(1), env(1), ex(1), login(1), sh(1), execve(2), execle(3), getenv(3), setenv(3), setlocale(3), system(3), termcap(3), termcap(5)

歴史
environ マニュアルページは 4.2BSD から登場しました。