とらりもんHOME  Index  Search  Changes  Login

シェルスクリプト入門

シェルスクリプト

 Linuxは, ひとつのコマンドでひとつの仕事をする。でも, それなりに大きな仕事をさせたいとき, いくつものコマンドをキーボードで打つのは面倒だし, どこかで間違ったときに最初からやり直し, というのも気が萎える話である。そこで, Linuxのコマンドを複数並べることで, ひとつの新しいコマンドのようなものを作ることができる。要するに, Linuxのコマンドを組み合わせたプログラミングである。それをシェルスクリプトという。 シェルスクリプトは, Linuxの複数のコマンドが順に記載されたテキストファイルである。

 ではシェルスクリプトを作ってみよう。

$ gedit ~/test.sh

というコマンドでテキストエディタgeditを立ち上げ, 以下の内容をテキストファイル"test.sh"に記述して保存せよ:

ls ~
pwd
date

ここで、ファイル名"test.sh"の拡張子".sh"は、shというシェルで実行されるシェルスクリプトである、というしるしである。

次に、このファイル"test.sh"を実行してみよう:

$ bash test.sh

この結果、ls ~, pwd, dateという3つのコマンドが連続して実行される。

  • 実行した結果の例
$ bash test.sh 
test.sh
/home/s123456/test
2019年  1月  7日 月曜日 06:54:35 JST

上は単純なシェルスクリプトの例だが、個々のコマンドをシェル変数と組み合わせ、さらにリダイレクトやパイプ、繰り返しや条件分岐などの処理を組み合わせることで、相当に複雑で大規模な処理を、シェルスクリプトにまとめることができる。端的に言えば、UNIXの思想は、シンプルで小さな処理(コマンド)を用意して、それをパイプやシェルスクリプトで組み合わせることで、複雑・大規模な処理を、ユーザーが独自に組み立てる、というところに根幹がある。

注意: シェルスクリプトは、コマンドを並べたテキストファイルを作り、そのファイルに実行権限を与えることで完成される。実行権限に関しては、中級コースのパーミッションを参照すること。

(ブラウザの戻るボタンで戻って下さい)

Last modified:2019/01/11 08:29:14
Keyword(s):
References:[2018_実用解析] [Unix/Linux入門] [python入門]