終了時に異なるリターン コードで Bash スクリプトを返す

Zhong Le Shini Yinaruritan Kodode Bash Sukuriputowo Fansu



終了コードは、スクリプトが正常に実行されたことを示す整数です。これらのコードは、リターン コードまたは終了ステータスとも呼ばれます。終了コードは通常、実行が成功するとゼロを返し、実行が失敗するとゼロ以外を返します。

ただし、多くの Bash スクリプト ユーザーは、終了時に異なるリターン コードで戻りたいと考えていますが、エラーが発生します。このチュートリアルでは、終了時にさまざまなリターン コードで Bash スクリプトを返すためのさまざまなアプローチについて説明します。

終了時に異なるリターン コードで Bash スクリプトが戻る

メソッドに移る前に、特定の意味を持つ終了コードを見てみましょう。







終了コード 説明
0 スクリプトは正常に実行されます。
1 スクリプトは一般的なエラーで実行されます。
2 スクリプト内の一部の組み込みコマンドの使用が無効です。
126 呼び出されて実行できないコマンドのエラーを示します。
127 コマンドがスクリプトに存在しません。
128 範囲外の終了コードまたは致命的なエラー信号を示します。
130 CTRL+C はスクリプトを終了します。
255 スクリプトの一般的な失敗エラー コード。

終了時にリターン コードを取得する方法は?

「echo $?」と書くだけです。戻りコードを取得するコマンド。たとえば、次の Bash スクリプトを使用して 2 つの数値を比較するとします。





ターミナルでスクリプトを実行したら、「echo $?」を実行します。終了時に戻りコードを取得するには:





. / 比較.sh

エコー $?



「comparison.sh」が正常に実行されます。そのため、端末は戻りコードとしてゼロを表示します。同様に、スクリプトの実行が成功すると、ゼロ以外の値が返されます。たとえば、スクリプトで ls コマンドの代わりに Ls を使用すると、戻りコードとしてゼロ以外が返されることがあります。

前の画像でわかるように、スクリプトに間違ったコマンドが含まれていたため、端末にはリターン コードとして 127 が表示されます。

異なる終了コードで Bash スクリプトを返す

スクリプトで終了コードを手動で設定できます。たとえば、終了コードとして 255 を取得する場合は、次のスクリプトを使用します。

次に、スクリプトを実行し、「echo $?」を実行します。戻りコードとして 255 を取得するコマンド:

. / 比較.sh

エコー $?

結論

これは、Linux で Bash スクリプトを実行した後に取得する可能性がある終了コードに関するものです。終了コードは、ユーザーが Bash スクリプトのステータスを識別するのに役立ちます。さまざまなリターン コードを手動で設定して使用することもできます。したがって、スクリプトが正常に実行された場合でも、ゼロではなくゼロ以外の終了コードを取得できます。 Bash スクリプトについて詳しく知りたい場合は、公式 Web サイトを参照してください。