bash スクリプトでエラー (および場合によっては警告) を確認するにはどうすればよいですか?
git リポジトリにチェックインする前に、bash スクリプトを事前チェックしたいと考えています。
最初の簡単なチェックに使用できることはわかっていbash -n script.sh
ますが、たとえば、読み取り専用文字列の書き換えなどは見つかりません。
readonly unique_id = "42"
unique_id = "21"
は問題ありbash -n script.sh
ませんが、もちろん実行時に失敗します。
編集:次のスクリプト
#!/bin/bash
# check.sh
readonly unique_id="42"
unique_id="21"
実行しても実行自体がエラーメッセージになる0
場合に与えるbash -n check.sh; echo $?
./check.sh: line 4: unique_id: readonly variable
これは構文エラーではないため、両方の動作は正しいですが、(単体テストであっても) 実行が中断されるため、そのようなエラーを除外する事前チェックの別の方法があるかどうかを尋ねています。
Unittest は予想される論理障害のみを検出するため、これは代替手段ではありません。