从python终止linux命令行实用程序

时间:2013-03-06 22:53:12

标签: python linux angstrom-linux

我有一个名为canutils的{​​{1}}命令行实用程序。它的工作原理如下:

我运行candump(指​​定我要转储的总线)

candump

然后运行直到我使用root@beaglebone: candump can0

结束它

然而,当我在这样的python脚本中运行它时。

CTRL+C

Popen(["candump","can0"],stdout=PIPE)

我不确定如何结束它。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

如果要控制子流程

,请不要使用call命令

如果你像上面那样使用Popen,你应该将它分配给这样的变量:

p = Popen(["candump","can0"],stdout=PIPE)

一旦你有了p,你就可以使用下面的SIGNAL命令之一 http://docs.python.org/2/library/subprocess.html#subprocess.Popen.send_signal

答案 1 :(得分:1)

使用Popen(),并在返回的send_signal(signal.SIGINT)对象上调用Popen