0

重複の可能性:
BASHでのエラー処理

デプロイスクリプトが1つあり、ubuntuシェルスクリプト、つまりbashスクリプトで例外処理を実行したいと思います。これに対する解決策はありますか?

4

1 に答える 1

0

例外処理が何を意味するのかはわかりませんが、探している場合trycatch(または同様の)場合は運が悪いです。ありますがset -e、それも近かったとは言えません。私が考えることができる最も近いものはERR信号トラップです(ERRは偽の信号です)

例えば;

trap 'echo [$LINENO] Error: $?' ERR

この場合、行番号と戻りコードのみを表示しますが、関数呼び出しを含め、引用符内に任意のコードを配置できます。失敗の定義はゼロ以外の$?です。条件や算術構造に対しては実行されず、関数には組み込まれません。

トラップは、次の方法で「スイッチオフ」できます。

trap – ERR

DEBUGフェイクシグナルも参照してください。

于 2012-10-23T10:22:12.233 に答える