中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python 多線程ping 2秒ping完500個ip地址

發布時間:2020-07-02 05:35:46 來源:網絡 閱讀:920 作者:lu294443582 欄目:系統運維

使用模塊queue 隊列控制訪問全局變量

suprocess 創建子進程生成多個shell


此腳本可用于網絡割接改造時 判斷各個設備的網絡連通性,ip地址和設備名字均從企業配置庫讀取。利用隊列控制變量讀取。2秒之內快速ping完




#!/usr/bin/python
#-*-?coding:?utf-8?-*-?
from?threading?import?Thread
import?subprocess
from?Queue?import?Queue
import?pymysql
num_threads=10
q=Queue()
def?pingme(i,queue):
????while?True:
????????ip=queue.get()
????????ret=subprocess.call('ping?-c?1?%s'?%?ip[0],shell=True,stdout=open('/dev/null','w'),stderr=subprocess.STDOUT)
????????#[接受變量字符串為命令,ping發送一個ICMP請求,并且將標準輸出重定向到/dev/null,相當于丟棄,并且將標準錯誤輸出重新定向到標準輸出。
????????這條語句返回其實就是ping值,就是python程序先創建shell進程,shell創建ping進程,ping進程運行返回值被shell等待,shell返回值給
????????python程序wait,如果成功則為0.]
????????if?ret==0:??
????????????print?'%s-%s?is?up!'?%(ip[1],ip[0])
????????elif?ret==1:
????????????print?'%s?is?down...'%(ip[1],ip[0])
????????queue.task_done()
#start?num_threads?threads??
for?i?in?range(num_threads):
????t=Thread(target=pingme,args=(i,q))#多線程調用
????t.setDaemon(True)?#設置守護線程
????t.start()
db?=?pymysql.connect(
????host="10.50.99.247",
????user="network",
????passwd="xxxx",
????port=3306,
????db="network",
????charset='utf8')
cursor?=?db.cursor()
cursor.execute("select?ipadd,name?from?net_dev?where?`group`?like?'xxx%'?")
data?=?cursor.fetchall()
for?i?in?data:
????q.put(i)?#上傳列表
q.join();
print?'完成'
~

批量測試腳本

python 多線程ping 2秒ping完500個ip地址

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

金堂县| 松滋市| 城固县| 克什克腾旗| 三穗县| 汉川市| 封开县| 元氏县| 香格里拉县| 安仁县| 德清县| 永宁县| 乐安县| 安塞县| 康平县| 阳新县| 镇康县| 大城县| 襄垣县| 聊城市| 叙永县| 铜梁县| 托里县| 峨山| 鹰潭市| 攀枝花市| 陆丰市| 青州市| 绩溪县| 集贤县| 延长县| 监利县| 平定县| 洛宁县| 双辽市| 日土县| 灌南县| 门头沟区| 马龙县| 晋中市| 安丘市|