python小工具脚本批量处理_Cisco Python批量操作脚本

#import time

from netmiko import ConnectHandler

from netmiko.ssh_exception import NetMikoTimeoutException

from netmiko.ssh_exception import NetMikoAuthenticationException

import sys

import time

import getpass

from datetime import datetime

def NetworkDevice(username,password,IP_Cisco,):

rt = {

'device_type':'cisco_ios',

'username':username,

'password':password,

'ip': IP_Cisco,

}

print('-' * 50)

print(u'[+] connecting to network device {0}...'.format(IP_Cisco))

net_connect = ConnectHandler(**rt)

net_connect.enable()

hostname = net_connect.find_prompt().replace("#", "")

print (u'[+] hostname:{0}'.format(hostname))

timestr = time.strftime('%Y-%m-%d-%H-%M-%S',time.localtime(time.time()))

cmd = 'write'

filename = (u'{0}_{1}_{2}.txt'.format(IP_Cisco,cmd,timestr))

save = open(r'E:\python1\保存各厂区switch\Cisco\ADM\log/' + filename,'w')

print(u'[+] executing {0} command'.format(cmd))

output = net_connect.send_command(cmd)

time.sleep(2)

save.write(output)

print(u'[+] {0} command executed,result was saved at {1}!'.format(cmd,filename))

save.close()

net_connect.disconnect()

if name == 'main':

print (u'[+] The Program is running.......')

username = input('Username: ')

password = getpass.getpass()

for ips in open(r'IP_Cisco.txt','r'):

start_time = datetime.now()

IP_Cisco = ips.replace('\n', '')

try:

NetworkDevice(username,password,IP_Cisco)

except (EOFError, NetMikoTimeoutException):

print ('Can not connect to Device')

except (EOFError, NetMikoAuthenticationException):

print ('username/password wrong!')

print ("Time elapsed: {0}\n".format(datetime.now() - start_time))

time.sleep(2)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值