oldfile ------- one 111 ury two 222 sld th ese ll my $valueToDelete = "two 222 sld"; open my $fh, "oldfile" or die "open failed: $!"; my $line; while ($line = <$fh>) { chomp $line; $dataFileContains{$line}++; } close $fh; open my $ff, "newfile" or die "open failed: $!"; my $line2; while ($line2 = <$ff>) { chomp $line2; print $dataFileContains{$line2} unless ($dataFileContains{$line2} eq $valueToDelete); } close $ff;