open (BEGIN_FILE, "$beg_file") || die "Cannot open: $!\n"; while ($line = ) { chomp $line; next if ($line =~ /unknown|shutdown|NONE/); ($as,$as_name,$nbr,$rtr,$int,$address,$int_name,$ifindex,$vpi,$vci) = split(' ',$priv_line); $begin{$int_name} = $rtr; } #### foreach $file(@end) { open FILE, "$file" || die "Cannot open: $!\n"; while ($line = ) { 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; } } #### my %good_files = (); foreach $key (sort keys %end) { if (!exists($begin{$key})){ push (@{$good_files{$begin{$key}}}, ($key)); } }