以下是使用paramiko库优化后的代码:

import paramiko
from time import sleep

class HuaweiSwitch:
    def __init__(self, ip, username, password):
        self.ip = ip
        self.username = username
        self.password = password

    def _get_connect(self):
        ssh_con = paramiko.SSHClient()
        ssh_con.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh_con.connect(self.ip, username=self.username, password=self.password)
        self.cli = ssh_con.invoke_shell()
        self.cli.recv(65535)
        return ssh_con

    def netconf(self):
        ssh_con = self._get_connect()
        self.cli.send('sys im\n')
        self.cli.send('netconf\n')
        self.cli.send('protocol inbound ssh port 830\n')  #ensp
        sleep(1)
        dis_this = self.cli.recv(65535).decode()
        print(dis_this)
        ssh_con.close()
        print('---使能Netconf成功---')

使用paramiko库可以更简洁地实现SSH连接和命令发送,从而优化代码

华为交换机使用python优化下面的命令 def netconfself ssh_con = self_get_connect selfclisendsys imn selfclisendnetconfn selfclisendprotocol inbound ssh port 830n #ensp sleep1

原文地址: https://www.cveoy.top/t/topic/fbTT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录