sub add { open FH, "<$file" or die $!; &lock( *FH ); $/ = "\;\n\n"; my @array = ; &unlock( *FH ); close FH; push @array, $my_long_domain_string_you_have; @array = sort @array; my $tempfile = "$file." . time(); # Unique id open FH, ">$tempfile" or die $!; &lock ( *FH ); print FH @array; &unlock( *FH ); close FH; # rename $file, "$file.old" or die $!; #Backup if desired rename $tempfile, $file or die $!; }