1. 程式人生 > >H3C交換機python命令下發腳本

H3C交換機python命令下發腳本

for () add 研究 lose print man type 潮流

新時代網工編程能力變成比敲命令更重要的能力了,大潮流已經無法改變。最近一直在研究python裏面的netmiko作為ssh的方法。把第一個腳本共享出來大家研究一下。

方向比較簡單,通過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地址

iplist = open(‘iplist.txt‘,‘r‘,encoding = ‘ascii‘)
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‘,

‘password‘:‘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命令下發腳本