目前,每当我在给定的长脚本上按CTRL + Z时,它都会立即终止脚本([1+] look (SIGTSTP) ./test.py) --这正是我想要的,但它也会让python2进程运行(当我键入ps查看进程时),这迫使我使用killall -9 python2,我不想每次都这么做。是否有一种方法可以立即终止不让python2进程在后台运行的脚本?
我看到的代码中目前没有SIGTSTP,但是我尝试了使用下面的代码,但没有成功。当我按CTRL + Z时,它甚至没有退出脚本。
def handler(signum, frame):
sys.exit("CTRL+Z pressed. Exiting Test")
signal.signal(signal.SIGTSTP, handler)发布于 2019-07-31 23:15:15
SIGSTP是挂起进程的信号,听起来像是要终止进程。您可以尝试发送CTRL或CTRL,这应该发送一个SIGINT信号.
我相信你也可以尝试CTRL-\发送SIGQUIT。
发布于 2019-07-31 23:20:17
使用Ctrl + C。SIGTSTP挂起进程,因此它保持打开,但不终止它。(注意:在Linux终端上使用Ctrl + \,否则使用Ctrl + C或Ctrl + D)
或者直接使用sys.exit()
https://stackoverflow.com/questions/57299897
复制相似问题