利用命令行对进程进行删除,windows下利用“taskkill /pid ' + str(pid) + ' /f”;linux下利用“kill + str(pid)”
简介
在 python 的项目开发中,程序有时会需要管理(例如停止)其它后台进程。
可以通过 os.getpid() 函数以及 os.system() 来实现这一功能。
示例
在同一个目录下创建 3 个脚本文件:
1 要停止的进程
创建脚本文件 count.py ,内容如下:
import time import os # 获取进程的pid pid = os.getpid() print('pid: ', pid) # 将pid写入本地文件 f1 = open(file='count_pid.txt', mode='w') f1.write(pid.__str__()) f1.close()、 # 开始计数并打印 n = 0 while True: n += 1 print(n) time.sleep(1)
运行这个脚本,这样就得到了一个在后台持续运行的进程。
2 用来停止进程的函数
创建脚本文件 kill.py ,内容如下:
import os def kill(pid): # 本函数用于中止传入pid所对应的进程 if os.name == 'nt': # Windows系统 cmd = 'taskkill /pid ' + str(pid) + ' /f' try: os.system(cmd) print(pid, 'killed') except Exception as e: print(e) elif os.name == 'posix': # Linux系统 cmd = 'kill ' + str(pid) try: os.system(cmd) print(pid, 'killed') except Exception as e: print(e) else: print('Undefined os.name')
从其它程序中调用这个脚本中定义的 kill() 函数,即可中止指定进程。
3 控制程序
创建脚本文件 manager.py ,内容如下:
from kill import kill # 读取pid f1 = open(file='count_pid.txt', mode='r') pid = f1.read() f1.close() # 调用kill函数,终止进程 kill(pid=pid)
运行这个脚本,就可以读取到 count.py 对应进程的 pid ,并通过它中止该进程。
推荐课程:零基础入门学习Python(小甲鱼)
新闻名称:创新互联Python教程:python怎么关闭当前进程
网站URL:http://www.shufengxianlan.com/qtweb/news14/324914.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联