python备份cisco交换机_1.自动备份思科交换机配置

自动备份思科交换机配置

2017-10-11 Python 宅必备

这个专题主要是一些日常用到的Python程序,不定期更新~~

备份原理

首先读取txt文档中的ip地址

然后循环地址,通过是我提出函数来获取配置信息

然后判断有没相应路径,没有则新建

最后保存在文件中

脚本内容

__author__ = '42274'

#encoding=utf-8

import telnetlib

import time

import datetime

import os

def switch(hostname,username,password1,password2,cmd1,cmd2):

tn = telnetlib.Telnet(hostname,timeout=10)

#tn.set_debuglevel(2)

tn.read_until("Username: ")

tn.write(username + "\n")

tn.read_until("Password: ")

tn.write(password1 + "\n")

tn.read_until(">")

tn.write('en'+ "\n")

tn.read_until("Password: ")

tn.write(password2 + "\n")

tn.read_until("#")

tn.write("terminal length 0"+"\n")

tn.write(cmd1 + "\n")

tn.write(cmd2 + "\n")

#tn.read_until("#")

tn.write("exit\n")

result=tn.read_all()

#print tn.read_all()

return result

if __name__ == '__main__':

# hostname = "10.65.5.1"

username = 'file'

password1='password1'

password2='password2'

cmd1='show run'

cmd2='show version'

file = open("g:\swbackup\ipaddress.txt")

ipaddress=file.readlines()

for hostname in ipaddress:

hostname=hostname.strip()

now = datetime.datetime.now()

dirname=hostname

#dirname="%.2i%.2i%.2i" % (now.year,now.month,now.day)

filename_prefix='SWB_'+hostname

filename = "%s_%.2i%.2i%.2i%.2i%.2i%.2i" % (filename_prefix,now.year,now.month,now.day,now.hour,now.minute,now.second)+'.txt'

#filename = "%s_%.2i%.2i%.2i" % (filename_prefix,now.hour,now.minute,now.second)+'.txt'

result=switch(hostname,username,password1,password2,cmd1,cmd2)

base='g:\\swbackup\\'

path=base+dirname+'\\'

ifExists=os.path.exists(path)

if not ifExists:

os.makedirs(path)

else:

pass

backfile=path+filename

fp=open(backfile,"w")

fp.write(result)

fp.close()

参数说明

base 代表需要保存配置信息文件的根目录

dirname代表子目录的名称,这里以ip地址作为子目录的名称

path代表保存配置信息文件的目录位置

filename_prefix代表保存配置信息文件的文件名前缀,采用’SWB+IP地址的形式

filename代表配置信息文件的名称,这里采用前缀+备份时间作为最终文件名

backfile即为最终保存配置文件的完整路径

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值