Python 尝试在激活脚本后使用subprocess.kill(),但它没有';行不通
我正在通过cmd运行python脚本,这将打开一个运行bash脚本的新shell。问题是我还需要杀了它 我已尝试使用Python 尝试在激活脚本后使用subprocess.kill(),但它没有';行不通,python,bash,subprocess,Python,Bash,Subprocess,我正在通过cmd运行python脚本,这将打开一个运行bash脚本的新shell。问题是我还需要杀了它 我已尝试使用子流程.kill()子流程.terminate() 甚至 os.system(“taskkill/F/pid”+str(p.pid)) 回馈 SUCCESS: The process with PID 11508 has been terminated. 但事实并非如此 我的代码是这样的: 相关的python行是 p = Popen(['C:/cygwin64/bin/bash.
子流程.kill()
子流程.terminate()
甚至
os.system(“taskkill/F/pid”+str(p.pid))
回馈
SUCCESS: The process with PID 11508 has been terminated.
但事实并非如此
我的代码是这样的:
相关的python行是
p = Popen(['C:/cygwin64/bin/bash.exe', '-c', '. /etc/profile; /cygdrive/c/Users/user/Desktop/host_manager/ba.sh'], creationflags=CREATE_NEW_CONSOLE)
巴什是
#! /bin/bash
`. /etc/profile`
/home/user/rc64_host_server.exe -in 50001 -out 50002 -d 1 -dsn 14993-0050
exe是一个侦听的ssh服务器
顺便说一下,当我跑步的时候
p = Popen('C:/cygwin64/bin/bash.exe', creationflags=CREATE_NEW_CONSOLE)
基尔设法完成了这项工作
如何使用脚本终止子进程???这个问题的答案对您没有什么帮助:?您知道要终止的进程的进程id是什么吗?我已经尝试了os.killpg和psutil.process,但解释器说它们不存在,而且os.system也不存在。我还错过了什么选择?@rok是的,我有一个进程id,但是当我尝试用os.system杀死它时,我得到了很好的回报,但是进程仍然以什么方式运行?这个问题的答案对你没有帮助吗:?你知道你想要杀死的进程的进程id是什么吗?我试过os.killpg和psutil.process,但是解释器说它们不存在,而且os.system也不存在。我还错过了什么选项?@rok是的,我有一个进程id,但当我试图用os.system杀死它时,我得到了一个很好的回报,但进程仍然在运行