【bash】変数未設定実行の阻止コマンド'set -euo pipefail'の分析
というツイートの、コマンドとオプションの意味がわからなかったので調べました。
以下はそのメモです。
set -e
エラーがあったら直ちにシェルを終了する
(ないと止まらない)
set -u
未定義変数を使用したときにエラーとする
set -o
シェルオプションを有効にする
pipefail
パイプラインの返り値を最後のエラー終了値にする
エラー終了値がない場合は0を返す
これらをつなげて
set -euo pipefail
と書ける。
なお上部にある
#!/usr/env bash
は正しくは
#!/usr/bin/env bash
である模様。
この記事が気に入ったらサポートをしてみませんか?