シェルスクリプトの基本ルール
シェルスクリプトとは
シェルスクリプトとは、シェルコマンドを記述したテキストファイルであり、複数のコマンドを一度に実行するためのスクリプトです。主にシステム管理やタスクの自動化に使用されます。
シェルスクリプトの基本ルール
ルール | 説明 |
---|---|
拡張子に「.sh」を付ける | Linuxではファイルの種類を拡張子で特定しないため、拡張子は必須ではないが、拡張子を付けることでファイルを管理・運用が人間にとって理解しやすくなる。 |
シェルスクリプトの1行目を「#!」で始める | 「#!」をshebang(シェバン)と呼び、その後にシェルのパスを記述します。例: #!/bin/bash |
「#」でコメントを記述する | 「#」で始まる行はコメントアウトと呼ばれ、スクリプトの説明やメモを書き込むのに使用されます。 |
シェルスクリプトの例とその解説
例: Hello World スクリプト
#!/bin/bash
# このスクリプトは "Hello, World!" を表示します
echo "Hello, World!"
・スクリプトの解説
#!/bin/bash
:
スクリプトの1行目で、スクリプトを実行するシェルを指定しています。この場合はBashシェルを使用します。# このスクリプトは "Hello, World!" を表示します
:
コメント行であり、スクリプトの説明を書いています。実行時には無視されます。echo "Hello, World!"
:echo
コマンドを使用してHello, World!
というメッセージを表示します。
例: ファイルのバックアップスクリプト
#!/bin/bash
# このスクリプトは特定のディレクトリ内のファイルをバックアップします
SOURCE_DIR="/path/to/source"
BACKUP_DIR="/path/to/backup"
# バックアップディレクトリが存在しない場合は作成する
if [ ! -d "$BACKUP_DIR" ]; then
mkdir -p "$BACKUP_DIR"
fi
# ファイルをバックアップディレクトリにコピーする
cp -r "$SOURCE_DIR"/* "$BACKUP_DIR"
echo "Backup completed successfully."
・スクリプトの解説
#!/bin/bash
:
スクリプトを実行するシェルを指定します。# このスクリプトは特定のディレクトリ内のファイルをバックアップします
:
コメント行であり、スクリプトの目的を説明しています。SOURCE_DIR="/path/to/source"
とBACKUP_DIR="/path/to/backup"
:
バックアップ元とバックアップ先のディレクトリを指定する変数を定義しています。if [ ! -d "$BACKUP_DIR" ]; then mkdir -p "$BACKUP_DIR"; fi
:
バックアップ先のディレクトリが存在しない場合、新しく作成します。cp -r "$SOURCE_DIR"/* "$BACKUP_DIR"
:
バックアップ元の全ファイルをバックアップ先にコピーします。echo "Backup completed successfully."
:
バックアップが完了したことを表示します。
まとめ
シェルスクリプトは、システム管理やタスクの自動化を効率的に行うための強力なツールです。基本ルールを守り、適切なコメントを記述することで、他の人にも理解しやすいスクリプトを作成することができます。以下の表は、シェルスクリプトの基本ルールを簡潔にまとめたものです。
ルール | 説明 |
---|---|
拡張子に「.sh」を付ける | ファイルを管理・運用が人間にとって理解しやすくなる。 |
シェルスクリプトの1行目を「#!」で始める | 「#!」をshebang(シェバン)と呼び、その後にシェルのパスを記述します。例: #!/bin/bash |
「#」でコメントを記述する | 「#」で始まる行はコメントアウトと呼ばれ、スクリプトの説明やメモを書き込むのに使用されます。 |
シェルスクリプトの基本ルールを守り、適切なスクリプトを作成しましょう。