我有一个名为canutils
的{{1}}命令行实用程序。它的工作原理如下:
我运行candump(指定我要转储的总线)
candump
然后运行直到我使用root@beaglebone: candump can0
然而,当我在这样的python脚本中运行它时。
CTRL+C
或
Popen(["candump","can0"],stdout=PIPE)
我不确定如何结束它。有什么想法吗?
答案 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
。