2017-05-22 17 views
0

私はPythonスクリプトを実行するシェルスクリプトを持っていますが、例外がPythonで捕捉されたときにメインシェルスクリプトから終了しなければなりません。誰もそれを達成する方法を提案することができます。Pythonからシェルスクリプトを終了

+1

スクリプトを実行した後に終了ステータスをチェックします( 'bash'では' $? 'になります) – donkopotamus

+0

例外が捕捉されて(扱われますか?)、例外が発生したときにPythonスクリプトが終了しますか? – unutbu

+0

pythonスクリプトが終了し、コントロールがシェルに戻ります。その時点でシェルスクリプトを終了します。 – Deepak

答えて

0

Pythonでは、sys.exit()を使用して戻り値を設定できます。通常、実行が正常に完了した場合は0を返し、そうでない場合はゼロ以外の数値を返します。

だからあなたのPythonでこのような何かが動作します:

import sys 

try: 
    .... 
except: 
    sys.exit(1) 

その後に他の人が言っているように、あなたはbashスクリプトは、どちらかが明示的に戻り値をチェックして、エラーをキャッチすることを確認する必要があります(使用例$?)またはset -eを使用してください。

関連する問題