UNIXの操作/UNIXの応用(2)/スクリプトと変数

5.2.1 スクリプト

シェルはユーザが入力したコマンドラインを対話的に処理するだけでなく,あら かじめ処理の内容をファイルに書いておき,一連の作業として実行できます.処 理の内容を記述したものをスクリプトと呼び,その内容を書いておくファイルを スクリプトファイルといいます.

シェルスクリプトでは条件分岐や繰り返しなどの処理ができます.このため同じ 処理を何度も繰り返す場合や,コマンドラインからでは難しい複雑な処理も,ス クリプトを書くことによって容易に行えます.シェルスクリプトの例を次に示し ます.

#!/bin/sh -f
echo "Hello."
echo "Now.." 
date

先頭行が``#!''ではじまると,それに続く絶対パス名でそのファイルを実行するコマンドを指定できます.この例では,実行するコマンドを /bin/shに指定しています.この他にも,tcshコマンドやperlコマンドなどを指定できます.先頭行以外が``#''ではじまると,コメントとして無視されます.

またこの例では``Hello.''と``Now..''をシェルに表示し(echoコマンド),その後,日時を表示する(dateコマンド)ように設定されています.シェルスクリプトの書き方についての詳細は市販のマニュアルなどを参照してください.

スクリプトファイルは,先頭行で実行するコマンドを指定して,かつそのファイルの保護モードが実行を許可していれば,コマンドとして実行できます.例として示したスクリプトが`now'という名前のファイルに書かれていた場合,次のような手順で`now'をコマンドとして実行できます.


% ls -F<RET>
now
% chmod u+x now<RET>
% ls -F<RET>
now*
% now<RET>
Hello.
Now..
Fri Feb 18 11:28:49 JST 2000
% _

シェルの種類

シェルには,CNS で用いられているtcshコマンド以外にも, shコマンドやbashコマンド, cshコマンドなどがあり,それぞれが特徴を持つ. cshコマンド,tcshC言語を意識した文法を持ちます.また,shコマンドはシェルスクリプトの作成に利用できます.