华为OPS,自定义命令,动态执行命令

OPS API示例

命令行事件订阅

result1_value, result2_description = ops.cli.subscribe(tag, pattern, enter=False, sync=True, async_skip=False, sync_wait=30)

参数说明

参数

参数说明

取值

tag

用于标识条件。

字符串形式,不区分大小写,长度范围是1~12,由字母、数字和下划线组成,以字母开头。tag不能为””、None、and、or以及andnot,不能包含\0。

pattern

指定匹配命令的正则表达式。

字符串形式,取值范围是1~128个字符,不能包含\0。

enter

指定匹配正则表达式的时间。

布尔型,取值如下:

  • True:表示按回车键后立刻匹配正则表达式。
  • False:表示命令中缩写的关键字以完整的形式进行匹配。

缺省值是False。

sync

指定命令行触发执行动作后,是否等待脚本执行结束。

布尔型,取值如下:

  • True:表示等待。
  • False:表示不等待。

缺省值是True。

async_skip

在sync取值为False时,指定是否跳过原有命令执行。

布尔型,取值如下:

  • True:表示跳过。
  • False:表示不跳过。

缺省值是False。

sync_wait

在sync取值为True时,指定命令行同步等待脚本执行的时间。

整数形式,取值范围是1~2147483647,单位是秒。缺省值是30秒。

路由变更事件订阅

result1_value, result2_description = ops.route.subscribe(tag, network, maskLen, minLen=None, maxLen=None, neLen=None, optype=all, protocol=all)

参数说明

参数

参数说明

取值

tag

用于标识条件。

字符串形式,不区分大小写,长度范围是1~12,由字母、数字和下划线组成,以字母开头。tag不能为””、None、and、or以及andnot,不能包含\0。

network

指定路由前缀。

点分十进制形式。

maskLen

指定掩码长度。

整数形式,取值范围是0~32。

minLen

指定掩码长度匹配范围的下限。

整数形式,必须大于等于maskLen的值。缺省值是None,表示掩码长度匹配范围的下限是0。

maxLen

指定掩码长度匹配范围的上限。

整数形式,必须大于等于minLen的值。缺省值是None,表示掩码长度匹配范围的上限是0。

neLen

指定不匹配的掩码长度。

整数形式,必须大于等于minLen的值,小于等于maxLen的值。缺省值是None,表示不匹配的掩码长度是0。

optype

指定路由事件变更类型。

枚举类型,取值如下:

  • add:新增路由。
  • delete:删除路由。
  • modify:修改路由。
  • all:全部变化。

缺省值是all。

protocol

指定路由协议属性。

字符串形式,缺省值为all,表示所有路由协议。

  • direct:直连路由
  • static:静态路由
  • ospf:OSPF路由
  • isis:IS-IS路由
  • bgp:BGP路由
  • rip:RIP路由
  • unr:用户网络路由

打开命令行通道

result1_handle, result2_description = ops.cli.open()

第一个返回值:命令行句柄。None表示错误,其他值为命令行句柄。第二个返回值:失败原因(仅当第一个返回值为None时返回)。

使用说明

脚本中打开的命令行通道,用户级别为15。

脚本中打开命令行通道后,才能向设备下发执行命令。

一个脚本中只能创建一个命令行通道,再创建第二个命令行通道时,将返回失败。

每打开一个命令行通道,消耗一个VTY资源。通过display users命令可以看到该VTY资源被Assistant: Name占用。当设备上剩余的VTY资源少于等于3个时,打开命令行通道失败。因此,脚本中,创建命令行通道并执行完命令后,需要通过关闭命令行通道接口(ops.cli.close(fd))及时关闭命令行通道,节省VTY资源。

执行命令行命令和关闭命令行通道接口使用打开命令行通道接口的第一个返回值作为输入参数。因此使用打开命令行通道接口时,必须指定返回值

Original: https://www.cnblogs.com/darkchen/p/15411569.html
Author: 奔波的驱魔人
Title: 华为OPS,自定义命令,动态执行命令

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/714607/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Python可视化打包 exe,这个神器绝了

    auto-py-to-exe 是一个用于将Python程序打包成可执行文件的图形化工具。本文就是主要介绍如何使用 auto-py-to-exe 完成 python 程序打包。aut…

    技术杂谈 2023年6月21日
    0111
  • WordPress网站中添加百度统计代码

    百度统计是流量分析平台,帮助收集网站访问数据,提供流量趋势、来源分析、转化跟踪、页面热力图、访问流等多种统计分析服务,同时与百度搜索、百度推广、云服务无缝结合,为网站的精细化运营决…

    技术杂谈 2023年7月11日
    0108
  • Windows Server 2012 搭建Ftp服务器

    Windows Server 2012 搭建Ftp服务器 一、介绍 FTP全称是FileTransferProtocol的简称,是一种文件传输协议。它使用TCP进行传输,客户和服务…

    技术杂谈 2023年6月21日
    0129
  • java实现设置Excel下拉框

    在使用Excel的时候用到了下拉框,实现的效果如下↓ 在生成excel文件时,需要根据给出的下拉框选项列表动态生成下拉框。实现代码如下: private void createSe…

    技术杂谈 2023年7月11日
    084
  • 基础篇:java GC 总结,建议收藏

    垃圾标记算法 垃圾回收算法 major gc、minor gc、full gc、mixed gc 又是什么,怎么触发的 垃圾回收器的介绍 Safe Point 和 Safe Reg…

    技术杂谈 2023年7月25日
    094
  • NotePad++的基本使用方法

    第一步:下载完成后的基本设置 设置>>首选项 进行如下操作 这个设置主要是为了在NotePad++的页面中可以输入汉字 第二步:在文件夹中新建文本文档 将后面的后缀改成…

    技术杂谈 2023年7月25日
    094
  • 基于英雄联盟的知识图谱问答系统

    介绍 代码地址:https://github.com/taishan1994/lol_knowledge_graph_qa 该文介绍了英雄联盟知识图谱的构建以及搭建一个简单的基于知…

    技术杂谈 2023年6月1日
    0144
  • 想做钢铁侠?听说很多大佬都是用它入门的

    作者:HelloGitHub- Anthony 你是否想过成为一名 Geek,就像”野生钢铁侠”稚晖君那样自己能做出各种新奇有趣的电子设备,但却不知道从哪里…

    技术杂谈 2023年6月1日
    0194
  • 设置Tab键缩进2字符

    默认是1.74cm,是1.5字符。 论文是4个空格显示为4个点,或者全角下2个空格,显示为2个空格框。看上方的首航缩进标志是否在2. 看图 在段落 格式里面进行设置! 点上图的制表…

    技术杂谈 2023年5月31日
    0117
  • 数字数组

    3、【剑指Offer学习】【面试题03:找出数组中重复的数字】 4、【剑指Offer学习】【面试题04:二维数组中的查找】 11、【剑指Offer学习】【面试题11:旋转数组的最小…

    技术杂谈 2023年6月21日
    092
  • JWT的验证(转载)

    JWT的验证流程分为两个步骤: 1.签名验证 当接收方接收到一个JWT的时候,首先要对这个JWT的完整性进行验证,这个就是签名认证。它验证的方法其实很简单,只要把header做ba…

    技术杂谈 2023年5月31日
    0105
  • 【赵渝强老师】HBase的体系架构

    一、什么是HBase? HBase是一个基于HDFS之上的分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文”BigTable大表…

    技术杂谈 2023年7月24日
    092
  • MAC 软件提示已损坏,需要移到废纸篓的解决方法

    解决方法一:允许任何来源的应用。在系统偏好设置里,打开”安全性和隐私”,将”允许从以下位置下载的应用程序”设置为”任何来…

    技术杂谈 2023年5月30日
    0124
  • 最小容器内常用命令安装方法

    首先改成中科大的源 echo “deb http://mirrors.ustc.edu.cn/debian stable main contrib non-free\ndeb ht…

    技术杂谈 2023年7月11日
    092
  • 【赵渝强老师】史上最详细的PostgreSQL体系架构介绍

    PostgreSQL是最像Oracle的开源数据库,我们可以拿Oracle来比较学习它的体系结构,比较容易理解。PostgreSQL的主要结构如下: 一、存储结构 PG数据存储结构…

    技术杂谈 2023年7月24日
    092
  • 9月份欧盟,美国等国家标准变更

    一.欧亚经济委员会确认EAEU EAC的Safety以及EMC证书的有效期 欧亚经济委员会(EEC)近期通过第 113 号、114号决议,确认在2022年12月11日之前,未按第9…

    技术杂谈 2023年6月21日
    096
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球