All the rest of the files:open (BEGIN_FILE, "$beg_file") || die "Cannot open: $!\n"; while ($line = <BEGIN_FILE>) { chomp $line; next if ($line =~ /unknown|shutdown|NONE/); ($as,$as_name,$nbr,$rtr,$int,$address,$int_name,$ifindex,$vpi,$vc +i) = split(' ',$priv_line); $begin{$int_name} = $rtr; }
Then, in order to end up with a hash of arrays, containing files that exist in my "non-beginning" files, but not in the beginning file:foreach $file(@end) { open FILE, "$file" || die "Cannot open: $!\n"; while ($line = <FILE>) { chomp $line; next if ($line =~ /unknown|shutdown|NONE/); ($as,$as_name,$nbr,$rtr,$int,$address,$int_name,$ifindex,$vpi, +$vci) = split(' ',$priv_line); $end{$int_name} = $rtr; } }
Works like a charm! Thanks to everyone for their help on this.my %good_files = (); foreach $key (sort keys %end) { if (!exists($begin{$key})){ push (@{$good_files{$begin{$key}}}, ($key)); } }
In reply to Re: Re: How to remove duplicate key/value pairs in hash of array
by Tuna
in thread How to remove duplicate key/value pairs in hash of array
by Tuna
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |