in reply to
Re: Split() first 3 elements of @array
in thread Split() first 3 elements of @array
Thanks for the suggestions. I have tried 2 ways and I still can't get some of the info. Lets assume the lines that I store at my @array are the following:
Device ID: switch1.Core-3750.abc.com
Entry address(es):
IP address: 10.10.10.10
Platform: cisco WS-C3750G-12S, Capabilities: Router Switch IGMP
Interface: GigabitEthernet1/0/28, Port ID (outgoing port): GigabitEth
+ernet2/0/7
Holdtime : 145 sec
Version :
Cisco IOS Software, C3750 Software (C3750-IPSERVICESK9-M), Version 12.
+2(55)SE4, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2011 by Cisco Systems, Inc.
Compiled Tue 06-Sep-11 02:59 by prod_rel_team
advertisement version: 2
Protocol Hello: OUI=0x00000C, Protocol ID=0x0112; payload len=27, val
+ue=00000000FFFFFFFF01022507000000000000A8B1D400F080FF0000
VTP Management Domain: 'networks'
Native VLAN: 1
Duplex: full
I can extract the switch name but I cannot sxtract the IP address for the switch for some reason
foreach $Line ( @RouterOutput ) {
if ( $Line =~ m/^Device / ) {
@Data = split( ' ', $Line );
$SwitchName = $Data[ 2 ] ;
last ;
}
if ( $Line =~ m/^IP / ) {
@Data = split( ' ', $Line );
$SwitchIP = $Data[ 2 ] ;
last ;
}
}