シェルスクリプトとは、UNIX系のオペレーティングシステムで使われるスクリプト言語の一つで、シェルと呼ばれるコマンドラインインターフェースで実行する一連のコマンドを記述したファイルです。
シェルスクリプトを使うことで、日常的なタスクや複雑な処理を自動化することができます。
目次
シェルとシェルスクリプト
シェルとは、コンピュータとユーザーの間に立って、ユーザーの入力を受け付け、コンピュータに命令を伝えるプログラムのことです。いわば、コンピュータとユーザーの仲介者のような役割を果たしています。
シェルスクリプトは、このシェルに対して、一連のコマンドを記述したファイルです。
つまり、シェルスクリプトを書くということは、コンピュータに「これをやって、次はあれをやって……」と、順番に指示を出すようなものです。
シェルの種類
シェルには様々な種類がありますが、ここでは代表的な3つのシェルについて詳しく解説します。どのシェルを選ぶかは、用途や好みによって異なります。
Bash(Bourne Again Shell)
- 最も一般的なシェル: 多くのLinuxディストリビューションでデフォルトのシェルとして採用されています。
- 機能が豊富: コマンドラインの歴史の中で培われた豊富な機能を持っています。
- 互換性: 多くのシェルスクリプトはBashで記述されているため、互換性が高いです。
sh(Bourne Shell)
- 古いシェル: Bashの原型となったシェルです。
- シンプルな構造: 機能はBashに比べてシンプルですが、基本的なコマンドはほとんど利用できます。
- 互換性: 古いシステムや組み込み機器など、リソースが限られた環境でよく使われます。
zsh(Z Shell)
- 高機能なシェル: Bashをベースに開発されており、Bashの機能に加えて、より強力な機能が多数実装されています。
シェルスクリプトの作成方法
シェルスクリプトのファイルは、「.sh」拡張子で基本作成します。
#!/bin/bash
# この行はシェルスクリプトのインタプリタを指定します
echo "Hello, World!"
- !/bin/bash はシバン(shebang)と呼ばれるもので、このスクリプトがどのシェルで実行されるべきかを指定します。「!/bin/bash」の場合、bashが使われます。
- echo コマンドは、コンソールにメッセージを出力します。
シェルスクリプトの実行方法
スクリプトを実行するには、UNIXのコマンドラインで次のようにします。
./test.sh
以下のように「Permission denied」が出てしまう場合は、スクリプトの実行権限がない可能性があります。
このときは、以下のように「test.sh」に実行権限を付与します。
chmod +x test.sh
これにより、以下のように”Hello, World!”が表示されました。
シェルスクリプトの用途
以下のような用途に使うことができます。
- タスクの自動化: 定期的なバックアップ、ファイルの整理、システムの監視など
- バッチ処理: 大量のデータ処理や複数のコマンドの実行
- 環境設定: 開発環境のセットアップやカスタマイズ
シェルスクリプトを使うことで、作業の効率化やエラーの削減が可能になります。