参考文献

参考文献1:https://www.oschina.net/code/snippet_7933_47935

测试代码

前言:这个程序用来批量备份博达交换机的配置,需要在桌面打开tftpd32.exe,还有打开sw.txt,

txt里面一行写一个ip地址,同时修改代码对应的tftpser ip地址。这个代码是改写现成的代码,

还有线程部分不太懂,是可以多线程同时进行的。

#!/usr/bin/python

# -*- coding: utf-8

import sys,os,telnetlib,time,threading,datetime,logging,re

import msvcrt #这个用来定义退出cmd,不然程序一闪而过

#---------------------------这段程序用来定义日志------------------------------

logger = logging.getLogger("Test") #为这个log取个名字

logger.setLevel(logging.DEBUG) #定义debug(优先级10)以上的告警都进行捕获

fh = logging.FileHandler("test.log") #把log写入相应的文件中

fh.setLevel(logging.DEBUG) #定义debug(优先级10)以上的告警都写入到文件

sh = logging.StreamHandler() #把log打印到屏幕上

sh.setLevel(logging.DEBUG) #定义debug(优先级10)以上的告警都打印到屏幕上

#定义要打印的参数的格式(参数很多),系统时间,name(logging.getLogger("Test")),优先级,自定义日志

formatter = logging.Formatter("%(asctime)s [%(name)s] -

[%(levelname)s]: %(message)s")

fh.setFormatter(formatter) #把格式formatter赋值给fh

sh.setFormatter(formatter) #把格式formatter赋值给sh

logger.addHandler(fh) #把fh加入logger.

logger.addHandler(sh) #把sh加入logger.

#---------------------------这段程序用来备份配置------------------------------

#Use for loop to telnet into each routers and execute

commands

class Bakconf(threading.Thread):

def __init__(self,host,username,password):

threading.Thread.__init__(self)

self.host=host

self.username=username

self.password=password

def run(self):

try:

logger.debug('------------------------connect---------------------------')

tn = telnetlib.Telnet(self.host,port=23,timeout=10)

except:

print "Can't connection %s"% self.host

return

tn.set_debuglevel(5)

logger.debug('-------------------------login----------------------------')

tn.write(self.username +b"\n")

tn.write("en\n")

tn.write(self.password + b"\n")

logger.debug('-----------------------backup

start---------------------------')

tn.write("copy startup-config tftp: %s \n"% tftpser)

tn.write(host + "\n")

#tn.write(b"\n")

time.sleep(1)

tn.write("exit\n")

tn.close()

logger.debug('--------------------------end------------------------------')

def main():

logger.debug('-----------------------read

username+password---------------------------')

username = "admin"

password = "admin"

global tftpser

logger.debug('-------------------read

tftpserverip-----------------------')

tftpser="66.66.66.100"

for host in open(r'sw.txt').readlines():

dsthost = host.strip('\n')

bakconf=Bakconf(dsthost, username, password)

bakconf.start()

'''

#Backup switch config and tar

time.sleep(1)

dtime=datetime.datetime.now().strftime("%Y%m%d%H%M%S")

os.popen('tar -cjf /backup/cisco/switch-'+dtime+'.tar.bz2 '+

'/tftproot')

os.popen('rm -fr /tftproot/*')

os.popen('find /backup/cisco/ -mtime +90 -exec rm {} \;')

'''

if __name__=="__main__":

main()

print ("Press 'D' to exit...") #提示press ‘D’ 退出cmd

while True:

if ord(msvcrt.getch()) in [68, 100]:#获取到‘D’键位

break #退出程序

python备份cisco交换机_python,自动备份交换机配置相关推荐

  1. H3C交换机配置文件自动备份

    一.自动配置文件需求 网络中有多台华三交换机,需要每天一定时自动备份配置,并且简单易用. 二.环境条件 交换机:型号S6805-56HF-G,版本Version 7.1.070, Release 60 ...

  2. Python os模块 设计文件夹自动备份、同步工具

    背景 我们经常使用U盘来储存和备份文件.但是备份一个文件夹到U盘的时候, 如果文件夹之前已经放到U盘, 那么怎么办? 多数读者会选择替换U盘中原有的文件.但是: 首先, 这种方式速度慢.如果文件夹中有 ...

  3. 数据服务器数据自动备份工具,网站数据自动备份工具介绍

    12月的寒风吹过,站长无时无刻不在担心网站,会不会在下一分钟就被关闭.而此时,为了防止服务器机房断网,网站被迫关闭,网站的数据备份就显得格外重要,一旦网站出现问题,我们可以利用最新的数据上传到其他空间 ...

  4. 企业数据备份方案-MxsDoc的自动备份的应用

    一.简介 企业数据包括各种文档资料.代码资料以及数据库的数据,对于一个企业来说至关重要. 计算机硬件和软件会因为各种原因(包括火灾.地震等自然灾害)导致数据的丢失或损坏,为了避免出现此类情况后,能够快 ...

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

    自动备份思科交换机配置 2017-10-11 Python 宅必备 这个专题主要是一些日常用到的Python程序,不定期更新~~ 备份原理 首先读取txt文档中的ip地址 然后循环地址,通过是我提出函 ...

  6. cisco 交换机 定期 自动 备份配置 -linux,交换机定时自动备份配置文件的方法

    如果一个管理员平时只管理个位数的交换机,而且也不需要经常修改配置,那可以使用手工方式定期保存配置文件,因为一旦设备故障,可以及时导入备份配置恢复网络. 但如果网络里有很多交换机,又要经常修改配置,那让 ...

  7. Cisco、华为、H3C交换机配置文件自动备份

    作为一个网管,很多时候需要定时对设备做好配置备份,以防设备宏基无法启动,配置新的设备时又需要重新调研网络链路.对于某些网络环境拥有百多台设备,而且存在各种品牌的网络设备,一个一个备份是一个痛苦的事情. ...

  8. cisco 交换机 定期 自动 备份配置 -linux,Cisco交换机配置文件定时自动备份

    Cisco交换机配置文件定时自动配备配置操作指引 目的:配置每天自动备份Cisco交换机配置文件到文件服务器. 准备: 搭建fileZilla server 文件服务器: 配置交换机备份命令: 文件服 ...

  9. 交换机定时自动备份配置文件的方法

    如果一个管理员平时只管理个位数的交换机,而且也不需要经常修改配置,那可以使用手工方式定期保存配置文件,因为一旦设备故障,可以及时导入备份配置恢复网络. <br/> 但如果网络里有很多交换机 ...

  10. Python实现Chrome浏览器书签自动备份

    import os import json# 设置 Chrome 书签文件的路径 chrome_path = r"C:\MyChromeDevUserData\Default\Bookmar ...

最新文章

  1. python数据分析从入门到精通电子工业出版社_荐书丨Python数据分析从入门到精通...
  2. Hbase Replication 介绍
  3. centos 升级curl版本
  4. [转]Flask --- 框架快速入门
  5. 视觉在无人驾驶中的应用及分类_机器视觉在智能化生产中的广泛应用
  6. 数据库存入表情符报错问题
  7. mybatis 遍历数组_Mybatis中别名、插件与数据源配置
  8. android页面布局 如何让中间的listview填充剩余部分_不使用css3:flex怎么实现一些常见的移动端布局...
  9. ubuntu20.04+vtd环境搭建
  10. 荣耀 android 5.0 root,华为荣耀畅玩5C获取EMUI5.0 安卓7.0系统的root教程
  11. PS制作3D立体字步骤教程
  12. 计算机科学与技术影视,计算机科学与技术专业--水墨的影视艺术语言的研究
  13. GIT提示Another git process seems to be running in this repository
  14. 修改docker容器中的配置文件
  15. 2018年爬虫代理IP提供商对比
  16. MSSQL 2005 如何批量修改表的架构SQL Server - 海狼工作室 - 杨远 - 和讯博客
  17. 信安软考 第八章 防火墙技术与原理运用
  18. 架构解密:从分布式到微服务pdf
  19. 开博尔智能android播放器C3,开博尔C3第9代不能进桌面的刷机方法
  20. 基金指标: beta,alpha,Sharpe Ratio

热门文章

  1. Linux 设置程序开机自动启动
  2. BIM+区块链,让城市建设更智慧
  3. 基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统
  4. 多快好省的视频播放工具 MPlayerX
  5. python量化自动交易_Python量化交易之MACD'顶底背离'形态的实现,自动
  6. mplayer配置文件_如何使用MPlayer播放DVD目录/ ISO文件/磁盘
  7. python把hdf转为tif_python_MODIS HDF数据转为tif并拼接图像
  8. 计算机组装虚拟仿真,虚拟仿真技术在中职计算机组装与维护课程中的应用探讨...
  9. 'gbk' codec can't decode byte 0xae 解决方法
  10. 会多门编程语言的你,最推荐哪3-5门语言?