シェルスクリプトは、各種コマンドを組み合わせるだけで、作業効率アップが可能になる普段使いの言語です。実行環境はシェル、LinuxなどのUNIX系OSが起動してログインすると最初に起動するプログラムの上で動きます。
複数ファイルにまとめて処理を行いたい、いつものコマンドラインオプションを付けてコマンドを起動したい、そんな日常的な場面にはうってつけ。実際、個人的な作業ツール、OS/アプリケーションの起動スクリプト、システム管理ツールとして便利に活用されている方も多いのではないでしょうか。
まずは、シェルスクリプトは言語として、どのような特徴を持つのかを押さえておきましょう。シェルスクリプトとC言語とを比較したのが表Aです。
表A シェルスクリプトとC言語との比較
項目 | シェルスクリプト | C言語 |
種別 | インタラクティブ言語 | コンパイラ言語 |
コンパイル | 不要(ソースファイルと実行ファイルが同一) | あらかじめ必要(ソースファイルと実行ファイルが別) |
実行ファイル | テキストファイル | バイナリファイル |
実行速度 | 遅い | 速い |
プログラムの修正 | 容易 | 困難 |
エラー処理など | 簡略化可能 | 細かい処理がすべて必要 |
文字列の処理 | 容易 | 面倒 |
適した使い方 | 既存のコマンドを組み合わせて一定の動作を行う | 新たなアプリケーションやOS本体などを記述 |
UNIX系OSならOSに依存せず、動作するはずのシェルスクリプト。とはいえ、細かな点ではOSやシェルの種類によって、使える文法、コマンド、オプションなどに違いがあります。せっかくなら、どこでも動くシェルスクリプトがいいですね!そう、UNIX系の本来の標準シェルsh、すなわちBourne Shellをベースに、移植性の高いシェルスクリプトは実現可能です[1]。UNIX系OSユーザにとってはとても身近なシェルスクリプト、一歩上のテクニックを身につけてみませんか?