in reply to Matching columns between files

Have you consider doing a line-by-line comparison, if you have large files you might end up consuming too much memory for storing an array with the contents. Here's an example

use strict; use warnings; open my $fh1, '<', 'file1'; open my $fh2, '<', 'file2'; while ( defined( my $line1 = <$fh1> ) and defined( my $line2 = <$fh2> +) ) { chomp($line1); chomp($line2); my @values1 = split( ',', $line1 ); my @values2 = split( ',', $line2 ); print "$values2[4]\n" if ( $values1[0] eq $values2[1] and $values1[1] eq $values2[2] and $values1[2] eq $values2[3] ); }

Replies are listed 'Best First'.
Re^2: Matching columns between files
by gggg (Initiate) on Jun 26, 2011 at 12:39 UTC
    Thanks for the reply. But this one is working but giving an empty output file.
      Thanks for the reply. But this one is working but giving an empty output file.

      What output file, it prints to STDOUT

        Yes, I am trying to print it to OFILE file handle for output file.Outfile passed as an argument