2015-12-21 24 views
5
import sys 

def end(): 
    foo=raw_input() 
    sys.exit() 

print 'Press enter to Exit python and Terminal' 

end() 

プログラムを実行するときに、Pythonインタープリタとターミナルを終了する必要があります。 しかし、それは、端末ではなく、Pythonインタプリタを終了するだけです。Pythonスクリプトを使ってLinux端末を終了するには?

ありがとうございます。

答えて

8

SIGHUP(ハングアップ)端末が終了するように指示します。ターミナルは、シェルはプログラムで自身を置き換えることになりますどのexecでそれを実行し、そう

import os 
import signal 
os.kill(os.getppid(), signal.SIGHUP) 
3

だけではなく、コマンド名をシェルからコマンドを実行し、スクリプトの親プロセスである必要があります。その後、プログラムが終了するとターミナルウィンドウも閉じます。

I.e.代わりの

$ python ./my_script.py 

実行:

$ exec python ./my_script.py 
関連する問題