Maybe you want to structure your data as a HASHES OF HASHES, with the keys being the VLAN number (if they are unique), then you can sort by keys and print the data:
use warnings;
use strict;
my %vlan_nums = (
112 => {
name => "JP-WIRELESS",
description => "JP-WIRELESS",
ip => "192.168.207.1",
mask => "255.255.255.0"
},
2113 =>
{
name => "JP-IDF1-DATA",
description => "JP-IDF1-DATA",
ip => "10.136.113.1",
mask => "255.255.255.0"
}
);
for my $num (sort keys %vlan_nums) {
print <<EOF;
VLAN number : $num
VLAN name : $vlan_nums{$num}{name}
VLAN description: $vlan_nums{$num}{description}
VLAN ip : $vlan_nums{$num}{ip}
VLAN mask : $vlan_nums{$num}{mask}
EOF
}
Which prints out:
VLAN number : 112
VLAN name : JP-WIRELESS
VLAN description: JP-WIRELESS
VLAN ip : 192.168.207.1
VLAN mask : 255.255.255.0
VLAN number : 2113
VLAN name : JP-IDF1-DATA
VLAN description: JP-IDF1-DATA
VLAN ip : 10.136.113.1
VLAN mask : 255.255.255.0
Data::Dumper is also handy for displaying Perl data structures. |