news 2026/3/31 5:22:09

华为批量下发配置命令使用telnetlib模块

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为批量下发配置命令使用telnetlib模块
importtelnetlibimporttime# ===================== 配置区(修改以下内容)=====================# 批量设备列表:[(IP, 端口, 用户名, 密码), ...]DEVICE_LIST=[("192.168.1.11",23,"admin","Huawei@123"),# 设备1("192.168.1.12",23,"admin","Huawei@123"),# 设备2]# 要批量下发的命令(按执行顺序写)COMMANDS=["sys",# 示例:进系统模式"vlan 10",# 示例:建立vlan"dis vlan",# 示例:查看配置]# 超时/等待参数(根据设备响应速度调整)CONNECT_TIMEOUT=10# 连接超时时间(秒)CMD_WAIT_TIME=2# 执行每条命令后的等待时间(秒)# ===================== 核心函数 =====================deftelnet_device(host,port,username,password,commands):"""连接单台设备并执行命令"""try:# 1. 建立Telnet连接tn=telnetlib.Telnet(host,port,timeout=CONNECT_TIMEOUT)print(f"\n开始处理设备{host}==================================================================")# 2. 输入用户名(匹配Username: 提示符)tn.read_until(b"Username:",timeout=5)tn.write(username.encode('utf-8')+b"\n")time.sleep(1)# 3. 输入密码(匹配Password: 提示符)tn.read_until(b"Password:",timeout=5)tn.write(password.encode('utf-8')+b"\n")time.sleep(1)# 4. 批量执行命令forcmdincommands:print(f"执行命令:{cmd}")# 发送命令(加换行符表示回车执行)tn.write(cmd.encode('utf-8')+b"\n")time.sleep(CMD_WAIT_TIME)# 读取命令执行结果result=tn.read_very_eager().decode('utf-8',errors='ignore')# 打印结果(仅展示关键内容,避免刷屏)print(f"结果:\n{result.strip()[:500]}...")# 只显示前500字符# 5. 关闭连接tn.close()print(f"设备{host}处理完成 ====================================================================\n")exceptExceptionase:print(f"设备{host}处理失败:{str(e)}==========================================================\n")# ===================== 主程序 =====================if__name__=="__main__":# 遍历设备列表,逐个处理fordeviceinDEVICE_LIST:host,port,username,password=device telnet_device(host,port,username,password,COMMANDS)print("所有设备处理完毕!")
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/27 23:15:18

【课程设计/毕业设计】基于springboot的居民小区物业管理系统的设计与实现“物业办公 - 业主服务 - 数据监管” 三位一体的数字化架构【附源码、数据库、万字文档】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/3/27 22:25:41

乐享云 v1.1.0| 不限速磁力下载,边下边播,内置字幕匹配

这是一款最近新出的免费磁力软件,目前仅提供安卓版。注册登录之后即可无限制使用。只需将磁力链接复制到软件中,等待软件解析完磁力链接后就可以打开磁力文件。如果磁力文件中包含视频资源,软件支持直接在线预览观看视频。同时,软…

作者头像 李华
网站建设 2026/3/12 23:56:59

Python返回数组/List长度的方法

你想了解在 Python 中获取列表(List,也常被俗称 “数组”)长度的方法,这是 Python 基础中高频使用的操作,核心是通过内置函数实现,同时需要掌握不同场景下的使用细节(比如嵌套列表、numpy 数组等…

作者头像 李华
网站建设 2026/3/30 7:21:16

运维转行做什么好?零基础入门到精通,收藏这篇就够了

运维工程师转行网络安全是职业发展路径中比较常见的一种转行,这种转行通常基于以下几个原因和优势: **1.技能相关性:**运维工程师通常负责维护和管理企业的IT基础设施,包括服务器、网络和存储系统。这些工作内容与网络安全领域有…

作者头像 李华
网站建设 2026/3/28 4:03:45

XML 编码:深入解析与实际应用

XML 编码:深入解析与实际应用 引言 XML(可扩展标记语言)是一种用于存储和传输数据的标记语言。它被广泛应用于互联网、企业内部系统以及移动应用中。本文将深入解析XML编码的原理、规范以及在实际应用中的优势。 一、XML编码概述 1.1 XML的起源与发展 XML最早由W3C(万…

作者头像 李华
网站建设 2026/3/14 6:11:57

【Python基础】Python字符串操作全攻略:新手入门必备指南

目录 Python字符串操作全攻略:新手入门必备指南1. 引言:什么是字符串?2. 前置知识3. 字符串的创建与访问3.1 创建字符串3.2 访问字符串元素:索引和切片3.3 字符串的不可变性 4. 常用字符串操作方法4.1 获取字符串长度:…

作者头像 李华