从另一个程序中终止 python 程序 运行
Terminate a python program running from another program
如何使用subprocess
终止开机启动的程序?
我 运行 跨越 this question 并找到 wordsforthewise 的 答案并尝试了但没有任何反应。
Wordsforthewise' 答案:
import subprocess as sp
extProc = sp.Popen(['python','myPyScript.py']) # runs myPyScript.py
status = sp.Popen.poll(extProc) # status should be 'None'
sp.Popen.terminate(extProc) # closes the process
status = sp.Popen.poll(extProc) # status should now be something other than 'None' ('1' in my testing)
我有一个程序 /home/pi/Desktop/startUpPrograms/facedetection.py
运行 在启动时由 Cronjob 启动,我想从这样的烧瓶应用程序路径中杀死它。
将程序名称分配给 extProc = program_name
可以吗?如果有怎么分配?
@app.route("/killFD", methods=['GET', 'POST'])
def killFaceDetector():
#kill code goes here.
既然你说这个程序是 运行 的 cronjob,你将无法在 Python.
中处理程序的 PID
您必须遍历所有进程以找到要杀死的进程...或更简洁地说,只需使用 pkill
实用程序,并使用 -f
标志它查看完整的命令行。以下将终止所有在命令行中具有 facedetection.py
的进程(如果您的用户有权这样做)。
import os
os.system('pkill -f facedetection.py')
如何使用subprocess
终止开机启动的程序?
我 运行 跨越 this question 并找到 wordsforthewise 的 答案并尝试了但没有任何反应。
Wordsforthewise' 答案:
import subprocess as sp
extProc = sp.Popen(['python','myPyScript.py']) # runs myPyScript.py
status = sp.Popen.poll(extProc) # status should be 'None'
sp.Popen.terminate(extProc) # closes the process
status = sp.Popen.poll(extProc) # status should now be something other than 'None' ('1' in my testing)
我有一个程序 /home/pi/Desktop/startUpPrograms/facedetection.py
运行 在启动时由 Cronjob 启动,我想从这样的烧瓶应用程序路径中杀死它。
将程序名称分配给 extProc = program_name
可以吗?如果有怎么分配?
@app.route("/killFD", methods=['GET', 'POST'])
def killFaceDetector():
#kill code goes here.
既然你说这个程序是 运行 的 cronjob,你将无法在 Python.
中处理程序的 PID您必须遍历所有进程以找到要杀死的进程...或更简洁地说,只需使用 pkill
实用程序,并使用 -f
标志它查看完整的命令行。以下将终止所有在命令行中具有 facedetection.py
的进程(如果您的用户有权这样做)。
import os
os.system('pkill -f facedetection.py')