news 2026/6/22 10:04:00

还在一个个登录交换机备份?这套 Python 脚本带你实现“一键自动化”

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
还在一个个登录交换机备份?这套 Python 脚本带你实现“一键自动化”

文章目录

  • 一、 为什么你需要这套系统?
  • 二、 核心功能亮点
  • 三、 环境要求与部署
    • 1.依赖库安装
    • 2.核心组件说明
  • 四、 系统结构一览
  • 五、 快速上手指南
    • 1.配置设备清单
    • 2.运行与模式选择
    • 3.日志查看
  • 六、 快速上手指南
    • 1.设备清单
    • 2.采集命令
    • 3.顺序/并发采集
    • 4.日志文件保存
  • 下载

一、 为什么你需要这套系统?

作为网络工程师,我们经常需要面对大量设备的配置备份和日志采集。如果靠人工逐台登录(Telnet/SSH),不仅效率低下,还极易出错。

为了解决这一痛点,我开发了这套设备自动采集备份系统。它能够根据自定义的设备清单,自动完成登录、执行命令、保存日志的全流程,支持顺序或并发执行,让重复性工作流程化、自动化。

二、 核心功能亮点

  • 多协议支持:全面支持 Telnet 和 SSH 远程登录管理模式。
  • 灵活配置:支持自定义设备清单(Excel 导入)、采集命令及等待回显时间。
  • 采集模式随心换
    • 顺序采集:逐台登录,稳定性高。
    • 并发采集:多线程同时作业(支持 1-10 个并发),极大提升大规模采集效率。
  • 智能存储与去重:日志按日期自动分类存储;若当日已完成备份,系统将自动跳过,避免重复工作。
  • 格式化输出:支持命令回显的清理与标准化格式化。

三、 环境要求与部署

想要运行本系统,你的 PC 需要具备以下 Python 环境:

1.依赖库安装

pipinstallpandas openpyxl paramiko

2.核心组件说明

  • Python 3.7+:基础运行环境。
  • Pandas & openpyxl:处理设备清单 Excel 文件。
  • Paramiko:负责核心的 SSH 登录功能。
  • Socket (标准库):处理 Telnet 登录。
  • Concurrent.futures:实现高效的并发处理。

四、 系统结构一览

项目采用模块化设计,结构清晰,方便二次开发:

  • main.py:主启动脚本,负责交互与流程控制。
  • read_device_list.py:负责解析 Excel 中的设备信息。
  • login_devices.py:底层登录逻辑与数据采集核心。
  • 设备清单.xlsx:存放你的设备库。

五、 快速上手指南

1.配置设备清单

在 Excel 中维护你的设备信息。设备名称将直接关联生成的 Log 文件名。请务必根据设备实际情况选择登录方式,并关联对应的设备类型。

注意:采集命令中需考虑“分屏显示”问题(翻页符),建议在命令首行加入取消分屏的指令。

2.运行与模式选择

启动程序后,提供交互式菜单。建议在设备数量较少或网络环境波动时使用顺序采集;在需要批量作业时使用并发采集

3.日志查看

采集到的日志会存放在device_logs文件夹中。系统会根据当前日期自动创建子文件夹,方便后期溯源与审计。

六、 快速上手指南

1.设备清单

  • 设备名称:最后保存的log文件名调用该名称。
  • 根据设备的实际情况选择登录方式。
  • 设备类型是关联采集命令的。

2.采集命令

  • 注意分屏显示的问题。(详细信息可以见我上一篇推文)
  • 等待时间 – 是给命令执行一个回显保存的时间。

注意:采集命令中需考虑“分屏显示”问题(翻页符),建议在命令首行加入取消分屏的指令。

3.顺序/并发采集

启动程序后,提供交互式菜单。建议在设备数量较少或网络环境波动时使用顺序采集;在需要批量作业时使用并发采集

4.日志文件保存

采集到的日志会存放在device_logs文件夹中。系统会根据当前日期自动创建子文件夹,方便后期溯源与审计。

当每日重复采集时,会优先检查该日期文件夹中是否已采集,已采集的设备不会被重复采集

下载

这套系统是我在实际网络运维工作中不断打磨出来的产物。它不仅提高了工作效率,更重要的是减少了人为操作的安全风险。

您可以关注公众号数通工程师,回复备份获取下载链接,或者私信我,谢谢!

如果觉得这些经验对你有用,不妨动动手指点赞,再顺手收藏起来,方便后续回看或分享给有需要的朋友 ——您的每一份支持,都是我继续分享的动力,感谢阅读!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/20 8:38:40

C盘的日志文件.log能不能清理?清理后会不会影响系统排查问题?

theme: default themeName: 默认主题你可能已经注意到电脑的c盘空间越来越满,在众多文件中,你会看到一些以.log结尾的文件,这些就是日志文件,一个常见的问题是,我可以删除c盘上的.log文件来释放空间吗,如果我删除了,会不会影响以后排查电脑故障,简短的回答是,是的,通常你可以删…

作者头像 李华
网站建设 2026/6/20 8:39:58

Django 路由

路由简单的来说就是根据用户请求的URL链接来判断对应的处理程序,并返回处理结果,也就是URL与Django的视图建立映射关系。 Django路由在urls.py配置,urls.py中的每一条配置对应的处理方法。 Django不同版本urls.py 配置有点不一样。 """ Django 1.1x版本 u…

作者头像 李华
网站建设 2026/6/20 8:40:24

基于Dify的RAG知识库搭建,大模型入门到精通,收藏这篇就足够了!

Dify 是一款开源的大模型应用开发平台,旨在帮助开发者快速构建生产级生成式 AI 应用。在Dify 本地化部署中,知识库功能是实现企业级 AI 应用的核心能力。 一、Dify基本概念 Dify 是一款开源的大模型应用开发平台,旨在帮助开发者快速构建生产…

作者头像 李华
网站建设 2026/6/20 8:40:11

服务器里面多个网口,电口,光口确定

在设备服务器上架时会涉及到配置网络和IP地址,确认端口的问题,对于有BMC系统的服务器,直接插入光模块和光纤后,可以在BMC里面确认好连接的哪个端口,端口会显示是否已连接光纤。 但是有时候在统信 等linux系统下面使用i…

作者头像 李华
网站建设 2026/6/10 20:25:25

ClevNote安卓版(安卓手机备忘录应用)

ClevNote是一款方便实用的Android备忘录应用。它提供了多种功能,可以帮助用户管理日常的备忘事项、清单、提醒和密码等。 软件功能 1.备忘录功能:用户可以轻松创建和管理备忘录,写下日常的想法、计划和提醒事项。 2.清单功能:用户…

作者头像 李华