news 2026/1/31 12:39:27

华为批量下发配置命令使用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/1/26 17:14:04

【光伏耦合PEM制氢】风光储与电解制氢系统仿真模型【Simulink】

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 🍊个人信条:格物致知,完整Matlab代码获取及仿…

作者头像 李华
网站建设 2026/1/31 2:35:39

高光谱成像:分析波长,可视化细微的色彩、材质差异和异物

在机器视觉系统成像过程中,光源起着重要作用,合适的光源方案可以极大降低图像处理算法的复杂度,提高系统的稳定性、精度和速度。近年来,各领域利用高光谱成像技术进行检测的市场规模不断扩大,对高光谱相机和相应光源的…

作者头像 李华
网站建设 2026/1/28 18:58:42

Java毕设选题推荐:基于SpringBoot的智慧物业服务系统的设计与实现基于springboot的居民小区物业管理系统的设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】

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

作者头像 李华
网站建设 2026/1/31 6:40:16

Java创建对象的方式

一、使用new关键字通过new 类名()调用类的构造方法来创建类的对象,是开发中最常用的方式,直接调用,可控性强。示例代码:创建Person类通过new关键字创建Person类的实例对象运行结果:二、使用反射机制,通过cl…

作者头像 李华
网站建设 2026/1/31 5:39:13

MBA必看!9个高效降aigc工具推荐,轻松应对AI检测

MBA必看!9个高效降aigc工具推荐,轻松应对AI检测 AI降重工具:MBA论文的高效助手 在当前学术研究中,AI生成内容(AIGC)的广泛应用带来了新的挑战。许多MBA学生在撰写论文时,不可避免地使用到AI辅助…

作者头像 李华