http://www.perlmonks.org?node_id=949558


in reply to Re: use to files - grep one to eliminate entries from another file.
in thread use to files - grep one to eliminate entries from another file.

By doing a 'Super Search', (located at the top of any PerlMonks page here), with the words 'find common lines', you will find similiar problems and solutions.

Only, they find lines in common rather than unique. But its not difficult to figure this the difference, I believe.

If the THIDS file isn't too large for your memory, you could read it into a hash to check against the 'mail.fil' for differences.

#!/usr/local/perl-5.12.3/bin/perl use strict; use warnings; open my $THIDS,"<", "THIDSerrs" or die "Could not open 'THIDSerrs' for + reading. $!"; my %data = map {$_ => 1} <$THIDS>; close $THIDS or die "Unable to close 'THIDSerrs' - reading. $!"; open my $mail, "<" , "mail.fil" or die "Could not open 'mail.fil' for +reading. $!"; open my $out, ">", "whatever.dat" or die "Unable to open 'whatever.dat +' for write. $!"; while (<$mail>) { print $out unless $data{$_}; } close $mail or die "Unable to close 'mail.fil' - reading. $!"; close $out or die "Unable to close 'whatever.dat' from writing. $!";
  • Comment on Re^2: use to files - grep one to eliminate entries from another file.
  • Download Code

Replies are listed 'Best First'.
Re^3: use to files - grep one to eliminate entries from another file.
by newkendall (Initiate) on Jan 24, 2012 at 01:04 UTC

    Thanks. I'll work on this tonight