相关疑难解决方法(0)

如何终止使用shell = True启动的python子进程

我正在使用以下命令启动子进程:

p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用时杀死:

p.terminate()
Run Code Online (Sandbox Code Playgroud)

要么

p.kill()
Run Code Online (Sandbox Code Playgroud)

该命令在后台继续运行,所以我想知道如何实际终止该进程.

请注意,当我运行命令时:

p = subprocess.Popen(cmd.split(), stdout=subprocess.PIPE)
Run Code Online (Sandbox Code Playgroud)

它在发出时会成功终止p.terminate().

python linux subprocess kill-process

285
推荐指数
7
解决办法
26万
查看次数

如何关闭python simpleHTTPserver?

所以我正在努力学习d3,wiki建议这样做

要在本地查看示例,您必须具有本地Web服务器.任何Web服务器都可以工作; 例如,您可以运行Python的内置服务器:

python -m SimpleHTTPServer 8888 &

很棒...只是现在我有一台服务器正在运行...但在某些时候我想我应该再次关闭它.

关闭它比使用更好的方法kill <pid>吗?对于一份小工作来说,这似乎是一件大事.

(我正在运行Mac OS 10.6.8(Snow Leopard))

FWIW:ctrl+c提供大约10行追溯,抱怨被打断.

kill -3 <pid> 在一个单独的窗口中发出一个Finder警告'Python意外退出'.

默认kill <pid>并且kill -15 <pid>相对干净(而且简单).

python simplehttpserver d3.js

61
推荐指数
6
解决办法
8万
查看次数