use strict; use warnings; my $man1 = <) { chomp; my ($program, $size, $file) = split ' ', $_, 3; $manLu1{$program}{$file} = $size if defined $file; } close $inMan; open $inMan, '<', \$man2; while (<$inMan>) { chomp; my ($program, $size, $file) = split ' ', $_, 3; next if ! exists $manLu1{$program}{$file} || $manLu1{$program}{$file} == $size; print "1: $program\n"; print "1: $file\n"; print "1: $manLu1{$program}{$file}\n"; print "2: $size\n"; } close $inMan; #### 1: PIPE 1: run.exe 1: 34010402 2: 34010202