使用python根据端口号关闭进程的方法-创新互联

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

创新互联公司长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为安化企业提供专业的成都网站设计、网站制作,安化网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。

lsof -i:12345

得到pid后再kill -9 pid

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

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

#-*- encoding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import os
from flask import Flask 
 
#生成该类的一个实例 
app = Flask(__name__) 
 
#调用app的路由方法 
@app.route('/') 
def hello_world(): 
 return '

Hello World!

' 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/

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文标题:使用python根据端口号关闭进程的方法-创新互联
标题网址:http://csdahua.cn/article/ceohcp.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流