とらりもん - シェルスクリプト入門 Diff
- Added parts are displayed like this.
- Deleted parts are displayed
like this.
!シェルスクリプト
複数の Linuxは, ひとつのコマンドでひとつの仕事をする。でも, それなりに大きな仕事をさせたいとき, いくつものコマンドを、キーボードで打つのは面倒だし, どこかで間違ったときに最初からやり直し, というのも気が萎える話である。そこで, Linuxのコマンドを複数並べることで, ひとつのテキストファイルにまとめて実行することができる新しいコマンドのようなものを作ることができる。つまり、複数の要するに, Linuxのコマンドを順々に組み合わせ、一連のまとまりのある処理として、ひとつのプログラムに仕立て上げることができる合わせたプログラミングである。それを''{{fontc(シェルスクリプト'', red)}}という。 シェルスクリプトは, Linuxの複数のコマンドが順に記載されたテキストファイルである。
ではシェルスクリプトを作ってみよう。
$ gedit ~/test.sh
というコマンドでテキストエディタgeditを立ち上げ, 以下の内容をgeditやviなどのテキストエディタでひとつのファイルテキストファイル"test.sh"に記述せよ記述して保存せよ:
lsls ~
pwd
date
ここで、ファイル名"test.sh"の拡張子".sh"は、shというシェルで実行されるシェルスクリプトである、というしるしというしるしである。
次に、このファイル"test.sh"を実行してみよう:
$ bash test.sh
この結果、ls, ls ~, pwd, dateという3つのコマンドが連続して実行される。
*実行した結果の例
$ bash test.sh
test.sh
/home/s123456/test
2019年 1月 7日 月曜日 06:54:35 JST
上は非常に単純なシェルスクリプトの例だが、個々のコマンドをシェル変数と組み合わせ、さらにリダイレクトやパイプ、繰り返しや条件分岐などの処理を組み合わせることで、相当に複雑で大規模な処理を、シェルスクリプトにまとめることができる。端的に言えば、UNIXの思想は、シンプルで小さな処理(コマンド)を用意して、それをパイプやシェルスクリプトで組み合わせることで、複雑・大規模な処理を、ユーザーが独自に組み立てる、というところに根幹がある。
''注意'': シェルスクリプトは、コマンドを並べたテキストファイルを作り、そのファイルに実行権限を与えることで完成される。実行権限に関しては、中級コースの[[パーミッション]]を参照すること。
(ブラウザの戻るボタンで戻って下さい)
ではシェルスクリプトを作ってみよう。
$ gedit ~/test.sh
というコマンドでテキストエディタgeditを立ち上げ, 以下の内容を
pwd
date
ここで、ファイル名"test.sh"の拡張子".sh"は、shというシェルで実行されるシェルスクリプトである、
次に、このファイル"test.sh"を実行してみよう:
$ bash test.sh
この結果、
*実行した結果の例
$ bash test.sh
test.sh
/home/s123456/test
2019年 1月 7日 月曜日 06:54:35 JST
上は
''注意'': シェルスクリプトは、コマンドを並べたテキストファイルを作り、そのファイルに実行権限を与えることで完成される。実行権限に関しては、中級コースの[[パーミッション]]を参照すること。
(ブラウザの戻るボタンで戻って下さい)