#!/usr/bin/perl use strict; use warnings; open my $FHIN, '<', $ARGV[0]; open my $FHOUT, '>', "$ARGV[0].new"; open my $DELLIST, '>', "ARGV[0].deleted"; foreach (<$FHIN>){ $_ =~ s/\"//g; $_ =~ m/(.*?),/i; my $tmp = $1; open my $SCRATCH, '<', "./scratch.pad"; open my $TMPOUT, '>', "./tmp.out"; foreach (<$SCRATCH>){ $_ = m/$tmp/ ? print $DELLIST $_ : print $TMPOUT $_; } close $SCRATCH, $TMPOUT; cp ($TMPOUT, $SCRATCH); }