bash / source の使い方
シェルスクリプトを実行
書き方
bash スクリプト ./スクリプト(実行権限が必要) bash -c 'コマンド'
./ で実行するには chmod +x が必要です。
よく使うオプション
| オプション | 意味 |
|---|---|
-c 'コマンド' | 文字で渡したコマンドを実行する |
-x | 実行する行を 1 つずつ出す(スクリプトの不具合を探すとき) |
-n | 実行せず、書き方の誤りだけを確かめる |
例
$ bash backup.sh
実行の権限が無くても、bash に読ませてスクリプトを動かします。
$ chmod +x backup.sh && ./backup.sh
実行の権限を付けて、./ を付けて動かします。今の場所のファイルは ./ を付けないと見つかりません。
$ bash -x backup.sh
どの行で何が起きているかを出しながら動かします。思いどおりに動かないときに使います。
$ source ~/.bashrc
設定ファイルを今のシェルに読み込みます。書き換えた alias や PATH がすぐ効きます(. ~/.bashrc と同じ)。
よくある間違い・注意
- bash script.sh は新しいシェルで動くので、中で決めた変数や cd は元のシェルに残りません。残したいときは source で読み込みます。
- Windows で作ったスクリプトは改行の \r で動かないことがあります(bad interpreter)。sed -i 's/\r$//' で直します。
実際に打って練習する
Linux レベル1 コースの Lv43「呪文を唱える bash」で覚えます(第3章 権限の城(権限とユーザー))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜16 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。