use strict; use warnings;
my %HoA;
while (my $line = <DATA>) {
chomp $line;
my ($col1,$restcol) = split /:\s*/, $line ,2;
my ($col2,$col3) = split ' ', $restcol,2;
push @{$HoA{$col1}{$col2}},$col3;
}
print "Dumping Output \n";
for my $col1 (sort keys %HoA) {
my $c1txt=$col1;
for my $col2 (sort keys %{$HoA{$col1}}) {
my $c2txt=$col2;
for my $col3 (@{$HoA{$col1}{$col2}}) {
printf "%-22s %-22s %-22s \n",$c1txt,$c2txt,$col3;
$c1txt='';
$c2txt='';
}
}
}
__DATA__
ULTRIX : CW18.72.0.3 IP-HOST1.log
DEC_DECSTATION : CW180.72.0.3 IP_HOST_AL.log
DEC_DECSTATION_ADDR : CW180.72.0.3 IP_HOST_al2.log
FOR_VISITORS23_HOST : HL617.253.1101.2 IP_HOST_hostinfo.log
FOR_VISITORS24_HOST : HL617.253.1101.2 IP_HOST_hostinfo2.log
FOR_VISITORS25_HOST : HL617.253.1101.2 IP_HOST_webform3.log
FOR_VISITORS25_HOST : HL617.253.1101.2 IP_HOST_webform4.log
FOR_VISITORS25_HOST : HL617.253.1201.2 IP_HOST_webform4.log
Dumping Output
DEC_DECSTATION CW180.72.0.3 IP_HOST_AL.log
DEC_DECSTATION_ADDR CW180.72.0.3 IP_HOST_al2.log
FOR_VISITORS23_HOST HL617.253.1101.2 IP_HOST_hostinfo.log
FOR_VISITORS24_HOST HL617.253.1101.2 IP_HOST_hostinfo2.log
FOR_VISITORS25_HOST HL617.253.1101.2 IP_HOST_webform3.log
IP_HOST_webform4.log
HL617.253.1201.2 IP_HOST_webform4.log
ULTRIX CW18.72.0.3 IP-HOST1.log