作者:大女人小诺 | 来源:互联网 | 2023-05-17 20:15
我想看看Python程序如何通过使用该模块发出命令来自杀sys
.我怎么能用以下形式的命令让它自杀呢?:
os.system(killCommand)
编辑:强调清晰
所以,为了清楚起见,我希望有一个在shell中运行的字符串可以杀死Python程序.
1> Antti Haapal..:
您可以使用sys.exit()
正常退出程序.
通过提高退出翻译SystemExit(status)
.如果省略状态None
,则默认为零(即成功).如果状态是整数,则将其用作系统退出状态.如果它是另一种对象,它将被打印并且系统退出状态将是一个(即,失败).
杀死解释器本身的系统命令取决于所使用的shell ; 如果你的shell是bash
或者zsh
,你可以使用:
a@host:~$ python
Python 2.7.8 (default, Oct 20 2014, 15:05:19)
[GCC 4.9.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.system('kill $PPID')
Terminated
a@host:~$
虽然您的实际结果可能有所不同 为了更安全,您需要自己提供进程ID:
>>> os.system('kill %d' % os.getpid())
如果您只想将一个获取信号发送到您的流程,您还可以使用os.kill()
流程的流程ID; 当前正在运行的进程的进程ID可从os.getpid()
以下位置获得:
a@host:~$ python
Python 2.7.8 (default, Oct 20 2014, 15:05:19)
[GCC 4.9.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.kill(os.getpid(), 9)
[1] 27248 killed python
a@host:~$