#!/usr/bin/perl -w use strict; use warnings; my (@rcfiles) = ; my ($patterns) = join '|', (':0fw: spamassassin.lock', '\* < 128000', '\| /usr/bin/spamc -d ha'); my ($inputfile); my ($outputfile); foreach (@rcfiles){ $inputfile = shift(@rcfiles); open(IN, "$inputfile") or die "Error - couldn't open $inputfile"; $outputfile = $inputfile . "\.tmp"; open(OUT,">$outputfile") or die "Error - couldn't open $outputfile"; while( ){ chomp($_); if( $_ =~ m/($patterns)/ ){ print "Line matched! Deleting it from the file...\n"; } else { print OUT "$_\n"; } } close(IN); close(OUT); rename ($outputfile,$inputfile); }