シェルスクリプトの終了ステータス
シェルスクリプトの終了ステータスの書き方は、以下のようになります。
exit 終了ステータス
終了ステータスを返すシェルスクリプトは、以下のようになります。
シェルスクリプトに渡された引数が0だった場合は終了ステータスを0にして、0以外だった場合は終了ステータスを1にしてシェルスクリプトを終了します。
1 2 3 4 5 6 7 8 |
#!/bin/bash if [[ "$1" == 0 ]] then exit 0 else exit 1 fi |
echo $?を実行すると、直前のコマンドの終了ステータスが表示されます。
実行例
$ file1.sh 1
echo $?
1
シェル関数の終了ステータス
シェル関数の終了ステータスの書き方は、以下のようになります。
return 終了ステータス
シェル関数が終了ステータスを返すシェルスクリプトは、以下のようになります。
シェル関数に渡された引数が0だった場合は終了ステータスを0にして、0以外だった場合は終了ステータスを1にしてシェル関数を終了します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#!/bin/bash func() { if [[ "$1" == 0 ]] then return 0 else return 1 fi } func $1 exit $? |
実行例
$ file2.sh 1
echo $?
1