我正在尝试让我的期望脚本使用正则表达式识别 IP 地址。据我所知,我无法让任何正则表达式字符串工作。
这是我的代码片段:
send "show router arp mac $MACADDR\r"
expect -re "^.\d+\.\d+\.\d+\.\d+.$"
puts "Carrying on....."
set IP_OUTPUT $expect_out(buffer)
puts $IP_OUTPUT
puts "Yay! That was success!!"
}
我尝试了多种正则表达式样式,但它们似乎都给出了相同的结果......没有。
该命令按预期执行并返回所需的信息,但获取expect
下一行(新命令的提示)
我期望$IP_OUTPUT
的样子
A::device.name# show router arp mac 00:00:00:00:00:00
===============================================================================
ARP Table (Router: Base)
===============================================================================
IP Address MAC Address Expiry Type Interface
-------------------------------------------------------------------------------
10.0.0.2 00:00:00:00:00:00 03h53m17s Dyn[I] Vlan799
===============================================================================
但它给我的只是 'A:device.name# '