setenv - 環境変数の設定


Table of Contents

環境変数を設定する、csh, tcsh 系の内部コマンドです。

環境変数とシェル変数の違いは、 シェル変数はそのシェルの中でのみ有効であるのに対し、 環境変数の場合は,そのシェルから起動されたプロセスにも受け継がれる点です。

例えば man は環境変数 PAGER という値を参照して起動するページャを決めます。 mnews は環境変数 NNTPSERVER という値を参照して接続する NNTP サーバーを決めます。 他にもいろいろありますし、自分でプログラムを作る際に、 環境変数を設定しておけばオプションで指定しなくてもいいというように 作ることもあるでしょう。

% setenv

と実行すると現在設定されている環境変数一覧を参照できます。また、

% printenv

でも環境変数一覧を参照できます。

設定方法は例えば、

% setenv PAGER less

とすれば、変数 PAGER に less という値を設定できます。 こうしておくと、man のページャが less になります。 設定した変数は $ をつけて使います。

% echo $PAGER

のようにします。

% unsetenv PAGER

とすると変数をリセットすることができます。

sh, bash Edit

ついでに sh, bash 系では

% export PAGER=less

のようにして設定します。sh では英数字以外が入る場合は、

% DISPLAY=localhost:0
% export DISPLAY

のようにわけて実行しなければいけないようです。エラーがでました。 export というコマンドにより、シェル変数が環境変数(bash では export 変数とも呼びます)に昇華されます。


xrea