in reply to removing duplicate lines

Maybe one of the Name4's has trailing spaces?
while ($line = <FILENAME>) { $line =~ s/\s+$//; # Remove trailing spaces and newline. $uniquelines{$line} = 1; } foreach $k (keys %uniquelines) { print NEWFILE "$k\n"; }