背景
シェルスクリプトは、コマンドラインで行う作業を自動化するための強力なツールです。繰り返し行う処理や複雑な設定をまとめることで、手作業のミスを減らし効率を向上させます。本記事では、シェルスクリプトの基本構文と簡単な実用例を紹介します。
基本構文と手順
1. スクリプトファイルの作成
まずはテキストエディタで新しいファイルを作成し、先頭に #!/bin/bash などのシバンを記述します。保存後は chmod +x script.sh で実行権限を付与しておきます。
2. 変数と引数
シェルスクリプトでは MY_VAR="value" のように変数を定義できます。スクリプトへの引数は $1, $2 などで参照でき、$@ ですべての引数を扱います。
3. 条件分岐if [ 条件 ]; then ... elif [ 条件 ]; then ... else ... fi という構文で条件に応じた処理を行えます。文字列比較には =、数値比較には -eq や -gt を使用します。
4. ループ
for ループは for ITEM in list; do ... done と記述し、while ループは条件が真の間繰り返します。例えば、指定したディレクトリ内のファイルを順に処理する場合に便利です。
5. 関数
処理を再利用する場合は function_name() { ... } として関数を定義します。関数内でも引数 $1 などが使えます。
6. 実用例
例えばログディレクトリをバックアップするスクリプトは次のように書けます:#!/bin/bash
SRC=/var/log
DEST=~/log_backup_$(date +%Y%m%d)
mkdir -p "$DEST"
cp -r "$SRC"/* "$DEST"
echo "バックアップが完了しました: $DEST"
このスクリプトをcronに登録すれば定期的なバックアップが自動化できます。
まとめ
シェルスクリプトはLinuxでの作業を効率化するための重要なツールです。シバンの記述、変数や引数の扱い、条件分岐やループ、関数化といった基本を押さえれば、さまざまな処理を自動化できます。まずは簡単なスクリプトから始め、徐々に実運用に応じた応用に挑戦してみましょう。