使用python根据端口号关闭进程的方法

时间:2021-05-22

我们知道,做web开发,在调试时需要反复启动整个工程,那么上一个工程占用的端口,在下一次工程启动时就不能用了,因为占用的端口没有释放,但是手动关闭方法是:

lsof -i:12345

得到pid后再kill -9 pid

十分麻烦,所以能否在启动python的web工程时顺便把上一次占用的端口给关闭了呢?

当然是有的,下面以flask为例(注意,复制下面的代码时,不要直接鼠标复制,而是使用左上角的view plain来复制,因为csdn博客会把'''+str(port)+'''的右侧显示成5个单引号,以及会把'''kill -9前面显示成五个单引号):

#-*- encoding:utf-8 -*-import sysreload(sys)sys.setdefaultencoding('utf-8')import osfrom flask import Flask #生成该类的一个实例 app = Flask(__name__) #调用app的路由方法 @app.route('/') def hello_world(): return '<h1> Hello World!</h1>' def killport(port): command='''kill -9 $(netstat -nlp | grep :'''+str(port)+''' | awk '{print $7}' | awk -F"/" '{ print $1 }')''' os.system(command) #开始执行 if __name__ == '__main__': #打开调试窗口 app.debug = True; #run可以指定host参数,指定ip,0.0.0.0表示全网段 #app.run() port=12345 killport(port) app.run(host='0.0.0.0',port=port); #测试方式:curl -i 127.0.0.1:12345/

以上这篇使用python根据端口号关闭进程的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章