in reply to Perl and arrays of arrays?
use strict; # start by extracting all unique information from file my %addresses = (); while (<>) { my ( $addr, @aliases ) = split( /\s+/, $_ ); foreach my $alias ( @aliases ) { $addresses{$addr}->{$alias} = 1; } } # write out unique information in requested format my @masterarray = (); foreach my $addr ( keys %addresses ) { my @aliases = (); foreach my $alias ( keys %{$addresses{$addr}} ) { push( @aliases, $alias ); } push( @masterarray, [ $addr, @aliases ] ); } # print out array foreach my $masterline ( @masterarray ) { print( join( ' ', @{$masterline} ) ); print( "\n" ); }
When supplied with a data file matching your input it outputs the following:
C:\temp>perl -w test.pl testdata.txt IPADDRESS alias1 alias2 alias5 IPADDRESS2 alias3 alias4 alias5
|
|---|