1-1 シェルとシェルスクリプトとは?


 Unixを少しでも使ったことのある人なら、黒い画面に何かコマンドを打ち込むとファイルをコピー作ったり、ディレクトリ(フォルダ)を作ったりしたことがあると思います。例えば

$ mkdir folder1
$ mkdir folder1/folder2
$ cd folder1/folder2
のようなコマンドを打ち込んだ場合、「folder1/」というディレクトリと「folder1/folder2」という名前の子ディレクトリが作成され、その後「folder1/folder2」ディレクトリに移動します。

 この作業が1回だけならまぁ簡単でしょう。ただ同じ作業をこれから何回も繰り返しやる可能性がある場合、毎回毎回この3行をうちこんでいくのは面倒ですよね?シェルスクリプトとは、何行にもわたるコマンドを書いたファイルのことです。一度そのようにコマンドをシェルスクリプトに書いておけば(書き方は次の節から説明していきます)、次に実行するときに、たったの1行で済みます。たとえばコマンドを書いてあるシェルスクリプトのファイル名が「hoge.sh」の場合

$ ./hoge.sh
と打ち込むだけで上記の3行のコマンドをやってくれます。

 今回の例ではたった3行でしたが、時には数十行にもわたる操作を何回も繰り返し行う場合があります。そんなときはシェルスクリプトは非常に強力です。一度ファイルにコマンドを書いて置けば、次からは1行だけシェルスクリプトを実行するコマンドを打ち込むだけでその作業をやってくれます。ここのページではシェルスクリプトをどのように書くのか、どのような便利なことがシェルスクリプトでできるのかを紹介したいと思います。

 ちなみによくシェルスクリプトとシェルが混同されますが、一応両者は違うもののようです。コマンドを書いたファイル(上の例ではhoge.sh)がシェルスクリプトというものです。シェルとは、シェルスクリプトに書いてある内容を読み込んでOSの方に「こんな作業をやってくれ」と伝えてくれるソフトウェアのことらしいです。なので厳密にいうと2つは違うものらしいです。ただシェルスクリプトのことを指して(本当は間違っていますが)シェルと呼んだりする人も多いので、少し注意してください。

次項目へ  目次へ戻る

E-mail : endo cat.phys.s.u-tokyo.ac.jp