H3C交換機python命令下發腳本
阿新 • • 發佈:2018-08-27
for () add 研究 lose print man type 潮流 新時代網工編程能力變成比敲命令更重要的能力了,大潮流已經無法改變。最近一直在研究python裏面的netmiko作為ssh的方法。把第一個腳本共享出來大家研究一下。
iplist = open(‘iplist.txt‘,‘r‘,encoding = ‘ascii‘)
ip_addr = iplist.readlines()
iplist.close() ‘password‘:‘h3c‘,
}
方向比較簡單,通過python的open方法讀取iplist.txt裏面的IP地址,這些ip就是所需要下發命令的交換機ip地址。然後讀取cmdlist裏面需要下發的哪些命令。通過python的netmiko ssh連接到交換機自動下發
h3c_check.py
coding:utf-8
import time
from netmiko import *
import sys
import os
import getpass
#讀取iplist.txt 文檔裏面的ip地址
ip_addr = iplist.readlines()
iplist.close()
cmdlist = open(‘cmdlist.txt‘,‘r‘,encoding = ‘ascii‘)
cmd_line = cmdlist.readlines()
cmdlist.close()
#遍歷ip_addr這個列表裏面的ip進行連接
for ip in iter(ip_addr):
print(ip)
try:
S5130 = {
‘device_type‘:‘hp_comware‘,
‘ip‘:ip,
‘username‘:‘h3c‘,
}
net_connect = ConnectHandler(**S5130) for cmd in iter(cmd_line): cmd_result = net_connect.send_command(cmd) print(‘-----------------------------------------------------------------‘) print(cmd) print(cmd_result) print(‘-----------------------------------------------------------------‘) print(‘‘) net_connect.disconnect() except (EOFError, NetMikoTimeoutException): print(‘Can not connect to Device‘) except (EOFError, NetMikoAuthenticationException): print(‘username/password wrong!‘)
iplist.txt
192.168.11.112
192.168.11.110
cmdlist.txt
display vlan
display version
display ip inter brief
H3C交換機python命令下發腳本