シェルスクリプトの作り方

シェルスクリプトの概説

シェルスクリプトとは、 UNIXのコマンドを組み合わせて作るプログラムのことである。

UNIXというオペレーティングシステムにおける基本的な方法論は、 何かの仕事がやりたい時には一気に大きなプログラムを作ったりしないで、 小さなプログラムを組み合わせることによって、 大きなプログラムを作ってゆくというものである。
この考え方は、C言語においてプログラムを小さな関数に分けて作って行くのと同じ考え方である。 シェルスクリプトの場合は、C言語における関数が、UNIXのコマンドになるということだ。

世の中には、各種のシェルが存在するが、ここではみんながいつも使用している Cシェルについて もっとも基本的なことを説明する。 (ウインドウの中でプロンプトを表示して、みんなが打ち込んだコマンドを実行してくれているのがCシェルだ) 名前がCシェルというぐらいなので、文法的にはC言語に似ているところもある。

C言語 シェルスクリプト
要素 関数 コマンド
変数
計算
入出力
if
while
for ×
switch
foreach ×

シェルスクリプトの利点

シェルスクリプトの欠点

シェルスクリプトの実行方法

  1. viでシェルスクリプトを作る
  2. cshで実行する

上の2でバグがあったり、思った通りにならない時は 1に戻ってviで修正する。
また、シェルスクリプトを実行する方法としてはchmodを使って実行可能ファイルに しておく方法もあるが、ここではcshを使う方法で統一しておく。

chmodによるシェルスクリプトの実行例

# vi test.sh        <- test.shを作る
# chmod +x test.sh  <- 実行可能にする
# test.sh           <- test.shだけで実行できる
(test.shを実行)
#

一度chmodを実行しておけば、後はtest.shだけで何度でも実行できる。

もっとも簡単なシェルスクリプト

まずviでtest.shという名前のファイルを、以下の内容で作る。

ls

次に

csh test.sh

と打ち込むことによって test.sh の中に書き込んでおいたlsが実行される。

# ls
a.out test.c          < - キーボードから直接打ち込んだlsの結果
# vi test.sh          < - 上のtest.shを作る
# csh test.sh         < - test.shの実行
a.out test.c test.sh  < - test.shの中のlsの実行結果

次にdocc.shとして

vi test.c
cc test.c
a.out

というファイルを作って実行すると

# vi docc.sh          < - 上のdocc.shを作る
# csh docc.sh         < - docc.shの実行
(ここでvi test.cが実行される)
(viが終るとすぐにcc test.cが実行される)
(cc test.cが終るとすぐにa.outが実行される)

参考


Prev | Next
Home | Contents
abe@injapan.net