Linuxのexitコマンドを使用すれば、ログアウトやプロセスを終了することができます。
exitコマンドの書式
exitコマンドの書式は以下の通りです。
1 |
exit [終了コード] |
終了コードには0〜255の値を指定します。指定した数値は戻り値として返され、指定しなかった場合はデフォルトの0が返されます。
一般的に正常終了時には0、異常終了時には1を指定する慣習があります。
ログアウトする
以下は、sshでリモートマシンにログインした後にexitコマンドを実行してログアウトする例です。
1 2 3 |
$ exit logout Connection to xxx.xx.xxx.x closed. |
終了ステータスを指定する
確認のために終了ステータス0を返すスクリプトと、終了ステータス1を返すスクリプトを準備します。
exit0.sh:終了ステータス「0」を返すスクリプト
1 2 |
#!/bin/bash exit 0 |
exit1.sh:終了ステータス「1」を返すスクリプト
1 2 |
#!/bin/bash exit 1 |
それぞれのスクリプトを実行した後に、「echo $?」を実行することで直前のプロセスの終了ステータスを確認することができます。
1 2 3 4 5 6 7 |
$ ./exit0.sh $ echo $? 0 $ ./exit1.sh $ echo $? 1 |
exit0.shを実行後には0が表示され、exit1.shの実行後には1が表示されます。終了ステータスを使えば、ステータスによって処理を分岐させることができます。
終了ステータスを使用したスクリプト例
以下のスクリプトでは、指定したファイルが存在しなかった場合、スクリプトは終了ステータス1を返して終了します。
1 2 3 4 5 6 7 8 9 10 11 12 |
#!/bin/bash file=$1 if [ -f $file ]; then # $fileが存在した場合の処理 exit 0 else echo "File Not Found" # エラー処理 exit 1 fi |
実行後の終了ステータスを使えば、ファイルの存在するか否かによって処理を分岐させることができます。