在数组中有一些输出,我试图从输出以特定单词开始并以特定单词/字符结尾的位置提取详细信息。然后将该输出打印到屏幕上。
我正在使用的数组中的输出是:
router rip
version 2
redistribute bgp 45134 metric 3
passive-interface Serial1/3:1.333
passive-interface Serial3/1:3.333
passive-interface Serial3/1:5.333
passive-interface Serial3/2:1.333
passive-interface Serial3/4:1.333
passive-interface Serial3/4:17.333
passive-interface Serial6/1:1.333
no auto-summary
!
address-family ipv4 vrf TestVRF-0001
redistribute bgp 45134 metric 3
network 10.0.0.0
no auto-summary
version 2
exit-address-family
!
到目前为止,我生成的 perl 代码如下:
elsif ( $action eq "show_vrf1" ) {
my $cmd = "show run | begin router rip";
my @lines = $s->cmd(String => $cmd,
Prompt => "/$enableprompt/",
Timeout => 10);
foreach my $line (@lines) {
if(/address-family ipv4 vrf TestVRF-0001.*?!/){
$result=$1;
print $result;
}
}
}
我只想将以下内容从数组中拉出:
address-family ipv4 vrf TestVRF-0001
redistribute bgp 45134 metric 3
network 10.0.0.0
no auto-summary
version 2
exit-address-family
!
出于某种原因,当我运行脚本时,我只是得到一个空白屏幕,没有从数组中提取任何数据。