您好,登錄后才能下訂單哦!
我們知道,做web開發(fā),在調(diào)試時需要反復啟動整個工程,那么上一個工程占用的端口,在下一次工程啟動時就不能用了,因為占用的端口沒有釋放,但是手動關(guān)閉方法是:
lsof -i:12345
得到pid后再kill -9 pid
十分麻煩,所以能否在啟動python的web工程時順便把上一次占用的端口給關(guān)閉了呢?
當然是有的,下面以flask為例(注意,復制下面的代碼時,不要直接鼠標復制,而是使用左上角的view plain來復制,因為csdn博客會把'''+str(port)+'''的右側(cè)顯示成5個單引號,以及會把'''kill -9前面顯示成五個單引號):
#-*- encoding:utf-8 -*- import sys reload(sys) sys.setdefaultencoding('utf-8') import os from flask import Flask #生成該類的一個實例 app = Flask(__name__) #調(diào)用app的路由方法 @app.route('/') def hello_world(): return '<h2> Hello World!</h2>' def killport(port): command='''kill -9 $(netstat -nlp | grep :'''+str(port)+''' | awk '{print $7}' | awk -F"/" '{ print $1 }')''' os.system(command) #開始執(zhí)行 if __name__ == '__main__': #打開調(diào)試窗口 app.debug = True; #run可以指定host參數(shù),指定ip,0.0.0.0表示全網(wǎng)段 #app.run() port=12345 killport(port) app.run(host='0.0.0.0',port=port); #測試方式:curl -i 127.0.0.1:12345/
以上這篇使用python根據(jù)端口號關(guān)閉進程的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。