#!/usr/bin/perl -w my $usage=" merch_match Prints all Merchant IDs found in File 1 that are also contained in File 2. "; my %MIDS; my $FName1 = shift or die $usage . "Missing FName1"; my $MIDcol1 = shift or die $usage . "Missing MID COL #1"; my $FName2 = shift or die $usage . "Missing FName1"; my $MIDcol2 = shift or die $usage . "Missing MID COL #2"; # substr uses 0-based string offsets $MIDcol1--; $MIDcol2--; # Gather MID numbers from File 1 open(INF,'<',$FName1) or die $usage . "Can't open " . $FName1; while () { my $M = substr($_, $MIDcol1, 16); $MIDS{$M}=0; } close(INF); # Gather MIDs from File 2 open(INF,'<',$FName2) or die $usage . "Can't open " . $FName2; while () { my $M = substr($_, $MIDcol2, 16); ++$MIDS{$M} if exists $MIDS{$M}; } close(INF); # Print match list for my $M (sort keys %MIDS) { print $M if exists $MIDS{$M}; }