终止正在运行的子进程调用 [英] Kill a running subprocess call

查看:32
本文介绍了终止正在运行的子进程调用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在 Python 上使用 subprocess 启动一个程序.

I'm launching a program with subprocess on Python.

在某些情况下,程序可能会冻结.这是我无法控制的.我唯一能从它启动的命令行做的是 CtrlEsc 快速杀死程序.

In some cases the program may freeze. This is out of my control. The only thing I can do from the command line it is launched from is CtrlEsc which kills the program quickly.

有没有办法用 subprocess 来模拟这个?我正在使用 subprocess.Popen(cmd, shell=True) 来启动程序.

Is there any way to emulate this with subprocess? I am using subprocess.Popen(cmd, shell=True) to launch the program.

推荐答案

p = subprocess.Popen("echo 'foo' && sleep 60 && echo 'bar'", shell=True)
p.kill()

查看 subprocess 模块上的文档以获取更多信息:http://docs.python.org/2/library/subprocess.html

Check out the docs on the subprocess module for more info: http://docs.python.org/2/library/subprocess.html

这篇关于终止正在运行的子进程调用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆