exit [n]
return [n]
exit [( expr )]
goto label
*exit [n]
*return [n]
exit は呼び出し元のシェル、またはシェルスクリプトを n で指定した終了ステータスで終了させます。n を省略すると、 最後に実行されたコマンドの終了状態 がシェルの終了状態になります。(EOF によっても、シェルは終了します。)
return は関数を、 n が示す戻り値で終了させます。 n を省略すると、戻り値は最後に実行されたコマンドの戻り値になります。
exit はシェルまたはシェルスクリプトを終了させ、 状態変数の値または式 expr で指定された値が返されます。
goto 組み込み関数は label をコマンド中で検索の引数として指定します。シェルは可能なかぎり入力をさかのぼり、label: という形式の行を探します。label: の前には空白文字またはタブ文字がある可能性もあります。指定された行の次から実行が再開します。while または for 組み込みコマンドと、対応する end との間にあるラベルへジャンプするとエラーになります。
exit は呼び出し元のシェル、またはシェルスクリプトを n で指定した終了ステータスで終了させます。具体的には、指定した値の最下位 8 ビットが終了ステータスの値となります。n を省略すると、最後に実行されたコマンドの終了ステータス がシェルの終了ステータスになります。トラップ実行中に exit が発生した場合、ここで言う最後に実行されたコマンドとは、トラップ呼び出し直前に実行されたコマンドを指します。なお、 ignoreeof オプション ( 後述の set を参照) が有効になっているシェルを除き、 ファイルの終わりを検出した場合もシェルが終了します。
return はシェル関数または . スクリプトを、n で指定された戻り値で呼び出し側スクリプトに戻します。具体的には、指定した値の最下位 8 ビットが終了ステータスの値となります。n を省略すると、戻り値は最後に実行された コマンドの戻り値になります。関数や . スクリプト実行中以外で return を起動すると、結果は exit と同一になります。
1 つまたは 2 つのアスタリスク (*) が先頭に付加されている ksh(1) コマンドは、以下のような特殊な処理を受けます。
コマンドが完了しても、コマンドの直前の 変数代入リストは依然として有効です。
入出力のリダイレクトは変数代入後に行われます。
エラーが発生すると、それを含むスクリプトは中止されます。
変数代入形式で、** を先頭に持つコマンドに続くワードは、変数代入と同一の規則で展開されます。つまり、チルド置換は = 符号のあとに実行され、ワード分割とファイル名生成は実行されません。
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ |
属性値 |
使用条件 |
SUNWcsu |