导入必要的库

from ncclient import manager import paramiko import time import datetime

定义设备信息

device_info = { 'address': '192.168.1.1', 'port': 22, 'username': 'admin', 'password': 'password' }

定义监控命令

monitor_commands = [ 'display memory', 'display ospf peer br' ]

定义连接设备函数

def connect_device(device_info): # 创建SSH连接 ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接设备
ssh.connect(
    hostname=device_info['address'],
    port=device_info['port'],
    username=device_info['username'],
    password=device_info['password']
)

# 返回SSH连接对象
return ssh

定义执行命令函数

def execute_command(ssh, command): # 执行命令 stdin, stdout, stderr = ssh.exec_command(command)

# 返回执行结果
return stdout.read().decode()

定义获取当前时间函数

def get_current_time(): return datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

连接设备

ssh = connect_device(device_info)

循环执行监控命令

for command in monitor_commands: # 执行命令 result = execute_command(ssh, command)

# 输出执行结果和时间戳
print('Command: ' + command)
print('Result: ' + result)
print('Timestamp: ' + get_current_time())

关闭SSH连接

ssh.close()

使用Python脚本监控华为设备(ncclient、paramiko)

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

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