exit コマンド
100%

コマンドライン · レッスン 19

exit コマンド

現在のシェルを終了し、呼び出し元へ返す終了状態を選ぶ方法を学びます。

シェルは入れ子にできます。グラフィカル端末がシェルを起動し、SSH 接続がリモートシェルを起動し、シェルから別のシェルを起動できます。1 つを終了すると、通常は現在のシェルを起動したものへ制御が戻ります。

現在のシェルを終了する

exit コマンドは現在のシェルへ終了を要求します。

$ exit

そのシェルがグラフィカル端末タブの主プロセスなら、端末の設定に従ってタブが閉じることがあります。SSH セッションでは、リモートシェルを終了すると通常はローカルシェルへ戻ります。入れ子のシェルを起動した場合、exit は親シェルへ戻ります。

別のシェル内で Bash を起動し、親シェルへ戻りたい場合、入れ子の Bash セッションでどのコマンドを実行しますか?

終了状態を返す

任意の数値引数で、シェルの呼び出し元へ返す状態を設定します。

$ exit 0

慣例として 0 は成功、0 以外の値は失敗またはプログラムが定義する別の状態を表します。数値引数なしの場合、Bash は exit より前に実行された最後のコマンドの状態で終了します。

現在のシェルを終了し、呼び出し元へ明示的に成功を報告するコマンドはどれですか?

Bash で数値を指定しない exit は、どの状態を返しますか?

ログインシェルで `logout` を使う

Bash の logout 組み込みコマンドはログインシェルを終了します。

$ logout

非ログイン Bash シェルでは、logout はログインシェルではないと報告します。代わりに exit を使います。

ログインシェルを終了するために特に用意された Bash 組み込みコマンドはどれですか?

`Ctrl+D` または端末を閉じる

空の対話型プロンプトで Ctrl+D を押すと、通常は端末のファイル終端入力文字が送られます。Bash は一般にその状態を終了要求として解釈します。シグナルではなく、Bash の ignoreeof などの設定で動作が変わることがあります。

グラフィカル端末のウィンドウを閉じると、端末アプリケーションがプロセスの終了を要求し、実行中のジョブに影響することがあります。可能なら秩序ある exit を使い、セッションを閉じる前に実行中の作業を確認してください。

レッスン完了

exit コマンド を完了しました

これで現在のシェルを終了し、その完了状態を伝えられるようになりました。

  • exit で現在のシェルの呼び出し元へ戻る。

  • 成功には 0、それ以外には定義済みの 0 以外の状態を指定する。

  • 引数なしの exit が使う状態を理解する。

  • logout はログインシェルだけに使う。

  • Ctrl+D をシグナルではなくファイル終端入力として認識する。

学習進捗を保存

無料アカウントを作成してこのレッスンを保存し、どのデバイスからでも学習を続けられます。

無料アカウントを作成
コマンドライン に戻る