堅牢なスクリプト① strict mode
Pro会員限定上級約40分6レッスン
bash -n で実行前に構文を確かめ、bash -x で「実際に何が実行されたか」を見ます。set -euo pipefail と ${VAR:?} で、壊れた前提のまま突き進まないスクリプトに作り替えます。
対象者: 自作スクリプトを本番で安心して動かしたい方 / 前任者のスクリプトを引き継いだ方
前提知識: 中級 総仕上げ 修了程度
この教材を終えると、できるようになること
- bash -n でスクリプトを実行せずに構文チェックし、エラーの行番号と終了コードを読めるようになる。
- bash -x の「+」行から、変数展開後に実際に実行されたコマンドを読み取れるようになる。
- set -u を入れたスクリプトが、未定義の変数を使った行で止まることを確認できるようになる。
- set -e(と -o pipefail)を入れたスクリプトが、失敗したコマンドで止まり、終了コードで失敗を伝えることを確認できるようになる。
- ${VAR:?メッセージ} で必須の設定値を宣言し、未設定なら分かりやすいメッセージで止まるスクリプトを書けるようになる。
修了後の姿: 障害の根本原因をログとコマンドで突き止められる、チームに頼られる運用エンジニアへ。
Chapter 1壊れ方を設計する
「途中まで動いて、黙って壊す」スクリプトを、最初の異常で止まるスクリプトへ。
Chapter 2確認クイズ
strict mode とスクリプトの検査方法の理解度をチェック。