如何使用Python脚本退出Linux终端?

8
import sys

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

print 'Press enter to Exit python and Terminal'

end()

当我们运行程序时,应该能够退出Python解释器和终端本身。但是它只退出了Python解释器,而没有退出终端。
提前感谢。
2个回答

11

SIGHUP(挂起)会告诉终端退出。 终端应该是您的脚本的父进程,所以

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

有没有办法让程序不需要按回车键就能退出? - Brōtsyorfuzthrāx

5

使用exec命令而非仅使用程序名称在shell中运行命令,这会使shell用该程序替换自身。因此,当该程序退出时,终端窗口也将关闭。

例如,可以用以下方式代替:

$ python ./my_script.py

运行:

$ exec python ./my_script.py

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接