使用很棒的
psutil库非常简单:
p = psutil.Process(pid)p.terminate() #or p.kill()
如果您不想安装新的库,可以使用以下
os模块:
import osimport signalos.kill(pid, signal.SIGTERM) #or signal.SIGKILL
另请参阅
os.kill文档。
如果您有兴趣在命令
python StripCore.py未运行时启动 它,否则将其杀死,则可以
psutil可靠地使用它。
就像是:
import psutilfrom subprocess import Popenfor process in psutil.process_iter(): if process.cmdline() == ['python', 'StripCore.py']: print('Process found. Terminating it.') process.terminate() breakelse: print('Process not found: starting it.') Popen(['python', 'StripCore.py'])
样品运行:
$python test_strip.py #test_strip.py contains the pre aboveProcess not found: starting it.$python test_strip.py Process found. Terminating it.$python test_strip.py Process not found: starting it.$killall python$python test_strip.py Process not found: starting it.$python test_strip.py Process found. Terminating it.$python test_strip.py Process not found: starting it.
注意 :在以前的
psutil版本中,
cmdline是 属性 而不是方法。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)