タイトル大津真=XはUNIXでサーバで》Tomcat4のインストール(3)カテゴリーサーバー製品, Java, 大津真=XはUNIXでサーバで
作成日2001/12/7 14:5:6作成者新居雅行
―――付録 〈UNIX基礎知識〉

――――――シェル変数
シェルはユーザインターフェースであるとともに、プログラミング環境でもあるのでシェル変数と呼ばれる変数が使用できる。シェル変数の取り扱いはシェルの種類によって異なるので注意が必要だ。ここではOS X標準のtcshでのシェル変数の取り扱いについて説明する。
シェル変数に値を設定するにはsetコマンドを使用する。

set 変数名=値

取り出す場合には変数名の先頭に「$」を付ける。たとえば変数greetingに「Hello」という文字列を設定してechoコマンドで表示するには次のようにする。

% set greeting=Hello 〈return〉
% echo $greeting 〈return〉
Hello

現在設定されているシェル変数の一覧はsetコマンドを引数なしで実行すると表示される。

% set 〈return〉
_
addsuffix
argv ()
autocorrect
autoexpand
autolist
cdpath /Users/o2
correct cmd
cwd /Users/o2
default_tcsh_initdir /usr/share/init/tcsh
dextract
dir /Users/o2/Library/Frameworks
dirstack /Users/o2
dunique
echo_style bsd
edit
fignore (~ .bak .o .bin RCS CVS)
framework_path (/System/Library/Frameworks /Users/o2/Library/Frameworks)
gid 20
group staff
histfile /Users/o2/.tcsh_history
history 150
home /Users/o2
host g3mac.o2.dyndns.org
inputmode insert
interactive
listjobs long
loginsh
matchbeep notunique
nokanji
nostat (/afs /net /Net /Network/Servers)
owd
path (/sw/bin /sw/sbin /Users/o2/myLocal/bin /Users/o2/bin/powerpc-apple-darwin /Users/o2/bin /usr/local/bin /usr/bin /bin /usr/local/sbin /usr/sbin /sbin /Developer/Tools /usr/X11R6/bin)
prompt [%m:%c3] %n%#
prompt2 %R ->
prompt3 OK? %R?
promptchars %#
recexact
savehist 150
shell /bin/tcsh
shlvl 1
status 0
symlinks ignore
tcsh 6.10.00
tcsh_initdir /usr/share/init/tcsh
term vt100
tty ttyp2
uid 501
user o2
user_tcsh_initdir /Users/o2/Library/init/tcsh
version tcsh 6.10.00 (Astron) 2000-11-19 (powerpc-apple-darwin) options 8b,nls,dl,al,sm,rh,color

―――組み込みシェル変数
シェル変数の中でシェル自身の動作を設定する変数を「組み込みシェル変数」と呼ぶ。代表的なシェル変数を2つ示そう。

――――――path
UNIXのコマンドは、シェル自身に組み込まれているシェルの組み込みコマンドと、実行可能形式のファイルであるその他のコマンドに分類される。組み込みシェル変数pathはコマンドの置かれているディレクトリのリストを保持する。このリストはコマンド検索パスと呼ばれる。コマンド検索パスに含まれるディレクトリ内のコマンド名はファイル名だけで実行可能だ。
たとえばlsコマンドの実体は/bin/lsというファイルだが、コマンド検索パスに/binディレクトリが含まれるため、

/bin/ls 〈return〉

としなくても

ls 〈return〉

だけで実行できるわけだ。シェル変数に値を追加するにはsetコマンドを次のような書式で実行する。

set 変数名=($変数名 値)

たとえば、ホームディレクトリの下のmybinディレクトリをコマンド検索パスに加えるには次のようにする。

% set path=($path ~/mybin) 〈return〉

――――――prompt
promptにはコマンドプロンプトが格納されている。たとえばプロンプトを

[ホスト名 時刻] %

のような形式で表示したければ次のようにすればよい。

% set prompt="[%m %t] %" 〈return〉
[ibook 5:24pm] %

ここで、「%m」はホスト名、「%t」は時刻を表す特殊変数だ。

(この項、以上)
[大津真]
関連リンク大津真Web Site