- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
查询 cisco 路由器以从分支中心路由器中提取“show dmvpn”输出的脚本。然而,我们升级了一个集线器路由器,新的 IOS 现在显示“show dmvpn”命令的日期/时间信息。以前的 IOS 版本只显示“从不”,并且由于 (\S+) only 而在使用脚本时会为较新的 IOS 路由器抛出错误。
我尝试阅读正则表达式,但无法弄清楚如何加入 [3x] 字/日期/时间。
工作:
if(pregmatch("/^\s+\d+\s+(\d+\.\d+\.\d+\.\d+)\s+(\d+\.\d+\.\d+\.\d+)\s+(\S+)\s+(\S+)\s+(\S+)/",$line,$hit))
#show dmvpn
# Ent Peer NBMA Addr Peer Tunnel Add State UpDn Tm Attrb
----- --------------- --------------- ----- -------- -----
1 192.168.1.1 42.10.10.10 UP **never** DN
1 192.168.1.1 42.10.10.10 UP **never** DN
1 192.168.1.1 42.10.10.10 UP **never** DN
不工作:正则表达式在更新的 IOS 上失败,实际上显示上行/下行隧道计时器的日期/时间:
#show dmvpn
# Ent Peer NBMA Addr Peer Tunnel Add State UpDn Tm Attrb
----- --------------- --------------- ----- -------- -----
1 192.168.1.1 42.10.10.10 UP **08:59:16** DN
1 192.168.1.1 42.10.10.10 UP **04:11:24** DN
1 192.168.1.1 42.10.10.10 UP **2d13h** DN
1 192.168.1.1 42.10.10.10 UP **3w0d** DN
1 192.168.1.1 42.10.10.10 UP **5d00h** DN
我假设我需要在代码中倒数第二个 (\S+) 旁边添加 (\d+:\d+:\d+) 但不确定如何加入它们,并将 3w0d 和 5d00h 包含在也有。
这似乎是一个简单的正则表达式修复,但目前超出了我的编码范围。我也尝试寻找答案,但每个人都对“正则表达式”和“正则表达式”使用不同的术语
最佳答案
如果您处于隧道模式,则您的正则表达式仅假设与行匹配:$tunnel_int = TRUE
但是你给我们的代码示例不包含以“Tunnel”开头的字符串,所以你不是在隧道模式下传递,所以你永远不会尝试匹配正则表达式。这就是为什么即使正则表达式正确,脚本也无法正常工作。
你的问题是算法问题,不是正则表达式问题。但是由于我们不知道您正在尝试做什么以及您正在尝试测试什么,因此很难提供帮助。
如果您不具备维护此功能的开发人员技能,也许您应该寻求自由开发人员的帮助,以帮助您了解您的需求并调整代码。
如果您有更具体的信息,那么您可以就某个主题寻求更精确的帮助。
祝你的项目好运。
关于php - Cisco 在 php 脚本中显示 dmvpn 正则表达式更改正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17131355/
所以我可以在 WSL2 中使用 X11 转发,例如 How to set up working X11 forwarding on WSL2 .然后我在连接到 Cisco AnyConnect 服务器
我最近进入了固件编程领域,我需要您的专家建议来保持我在该领域的初步发展。 我想修改CISCO E2500路由器的固件以增强IPv4和IPv6的路由,其中包括在此过程中更改路由表。 我决定使用 dd
Cisco IOS设置口令—启用口令 可以在全局配置模式下设置启用口令: Router(config)#enable ? last-res
我正在尝试从 Cisco ACI 获取路由表。我收到重复的路线。有办法解决它们吗? 例子: "10.127.32.70/32", "10.127.32.70/32",
我在 Cisco CVP 中有一个外部项目,我已将该项目导入到 Cisco CVP IDE 中。这个项目有一些自定义元素,我也有它们的相关类。我已将它们的相关类放在 cisco\cvp\plugin\
我只想获取打入我们调用中心的所有调用的 3 位信息:调用者、他们调用的号码以及实际接听电话的人的号码(不同于外界调用的号码)。 直到最近,我们通过监听 JTAPI 日志文件更改(使用 Microsof
我有一个文本思科配置。我应该匹配的主机名行是“125-hostname billdevice”。我正在使用下面的模式,但不匹配 true。 Pattern ciscohostname = Patter
只有第一个命令的输出才会写入文件。 如何让它将所有命令的输出写入文件? --- - name: run show commands hosts: nexus1 gather_facts: Fa
我在尝试解析路由器的 mrib 表时遇到了一些问题。我已经能够解析其中的一些但有问题。例如我有以下输出: (192.168.1.1,232.0.6.8) RPF nbr: 55.44.23.1 Fla
我无法让 CharlesProxy 在 Android 或 iOS 设备上运行。笔记本电脑和移动设备位于 Anyconnect VPN 之后。这里的任何指示都会有所帮助。谢谢。 最佳答案 我在 Cha
我有一个 C++ 程序,它使用 Microsoft TAPI 接口(interface)从 Cisco Call Manager PBX 收集调用事件。为了获得 Cisco 事件,我从调用管理器下载了
在我的网页上,我需要检查给定用户是否可以在 Cisco Jabber 客户端上使用。我有号码和用户名。我已经能够发送聊天消息并开始语音对话,但最好检查用户是否在线,例如显示很酷的图标或其他东西。有没有
我已成功使用其他几个 Webex API,但“LstrecordaccessDetailHistory XML 请求”不起作用。 我从 XML 响应中收到此消息: unable to instanti
我目前正在尝试让 RHEL 5 机器通过 radius 访问 cisco acs。我安装了 freeradius 包并使用 radtest 命令尝试访问 radius 服务器。当我进入 cisco r
我希望你能帮助我,目标是使用 pysnmp 获取已连接到 ap 的客户端数量,我想我很接近,我知道我可能必须使用 pyasn1,但我得到了一个给我以下错误的部分: ('-------->', Disp
我正在尝试通过 SNMP 从 ucs-6100 获得答案。 通过控制台:(模拟我的请求) >>> snmpget -v3 -l authPriv -u usr-sha-aes -A authkey1
我在 Ubuntu 20.04 上遇到 Cisco AnyConnect 问题。 当我启动 docker 容器(使用非主机网络驱动程序)时,Cisco AnyConnect 立即重新连接。 启动 do
我正在使用基本的 Cisco VPN 客户端(我相信是 v.5)。无论如何以编程方式确定特定配置文件(或与此相关的任何配置文件)是否已连接? 我希望以某种方式从客户端本身获得状态。我不想尝试 ping
我需要从我的 .NET 应用程序配置和查询 Cisco 路由器,我需要通过 Cisco WSMA 来完成网络服务接口(interface)。 这些服务通过 HTTP(在我的例子中)公开,并使用 SOA
我正在寻找命令行参数,以使用 CISCO H264 将一系列图像转换为 H264。 (类似于 FFMPEG 图像到视频功能)。不幸的是,我不能使用 FFMPEG,因为我正在创建一个商业应用程序,我在其
我是一名优秀的程序员,十分优秀!