my @Fn = qw' bigfile1.txt bigfile2.txt '; open my $f1, '<', $Fn[0] or die "$Fn[0] $!"; open my $f2, '<', $Fn[1] or die "$Fn[1] $!"; while( defined(my $l1 = <$f1>) && defined(my $l2 = <$f2>)) { # chomp here, but only if necessary print "line $. is ", $l1 cmp $l2 ? "different!" : "identical!", "\n" } close $f1, close $f2;