首页 > 编程语言 >Python实现批量更改网络设备名

Python实现批量更改网络设备名

时间:2022-11-01 00:35:12浏览次数:40  
标签:hostname 批量 Python cmd send item result 网络设备 ssh

import paramiko
import datetime 
import time
f=open('./hostnames.txt','r')
hostnames=f.readlines()

#hostnames=['1.1.1.1','2.2.2.2','3.3.3.3','192.168.99.10','192.168.99.20']
#连接登录设备
for hostname in hostnames:
    hostname=hostname.strip()
    ssh_client=paramiko.SSHClient()
    ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh_client.connect(hostname=hostname,username='python',password='123456')
    print('Sucessfully conneted to ',hostname)
    #提取网络设备主机名
    cmd=ssh_client.invoke_shell()
    cmd.send('sys\n')
    cmd.send('dis curr | include sysname\n')

    time.sleep(1)
    result=cmd.recv(66666)
    result=result.decode('ascii')
    items=result.splitlines()
    for item in items:      
        item=item.strip()
        if item.startswith('sysname'): 
            device_name=item.split(' ')[-1]
    #修改网络设备主机名     
    device_name=device_name+'-35'  
    cmd.send(f'sys {device_name}\n')
    time.sleep(1)
    cmd.send('quit\n')
    cmd.send('save\n')
    time.sleep(1)
    cmd.send('y\n')
    #print(result)
    print('the sysname operation has  finshed!!!')
    ssh_client.close()

标签:hostname,批量,Python,cmd,send,item,result,网络设备,ssh
From: https://www.cnblogs.com/tang-learning/p/16846409.html

相关文章

  • Python实现监控网络设备状况并发送邮件
    importparamikoimportdatetimeimporttimefromemail.mime.textimportMIMETextimportsmtplib#定义发送邮箱函数defsend_email(title):title=titles......
  • Python实现批量网络设备备份
    importparamikoimportdatetimeimporttimef=open('./hostnames.txt','r')#准备主机文件,一台主机占一行hostnames=f.readlines()forhostnameinhostnames:......
  • python函数
    什么是函数?函数相当于具备某一功能的工具函数使用原则:先定义,后调用为什么要使用函数?组织结构不清晰,可读性差代码冗余可维护性,扩展性差函数使用函数定义#......
  • Python 基础
    目录基础语法变量标识符命名规范注释单行注释多行注释import引入模块的方法运算法算术运算符成员运算符条件控制if语句matchcase语句基础语法变量标识符命名规范标......
  • Python实现批量登录网络设备
    importparamikoimportdatetimeimporttimef=open('./hostnames.txt','r')#准备好主机文件,一台主机占一行hostnames=f.readlines()#hostnames=['1.1.1.1','2.2.......
  • npm install报奇怪的python错误
    一、问题描述从git上面拉取项目,准备在本地运行,在使用 npminstall 安装依赖的时候,出现了奇怪的python错误。但是类似的项目能够正常的安装依赖并运行二、解决方法如......
  • Python开发 之 两种爬虫的方式 正则表达式、XPath
    文章目录​​1、简介​​​​2、简单爬取基本信息——效果图​​​​3、先将一下利用正则的方式​​​​3.1简单理解​​​​3.2源码​​​​4、XPath​​​​4.1简单介......
  • 学习python-Day82
    今日学习内容一、vue项目目录介绍myfirstvue 项目名字 -node_modules 文件夹,内部有很多当前依赖的模块,可以删除,但是想恢复就需要敲:npminstall-publice 文......
  • [python] 合并文件 终端命令行 cmd版
    importgetoptimportosimportsysdefshow_help():print("-h查看帮助")print("-s<path>文件路径1例:E:\\folk.bin")......
  • [python] bin转dfu 脚本 RSA2048 签名 解密 公钥 私钥
    /lib/importhashlibimportosimportsysimporttimefromdatetimeimportdatetimeimportrsaclassmy_sign():pubkey=""privkey=""def__init__(self,pa......