#!/usr/bin/perl # file : mike.pl use warnings; use strict; #search directory for files ending with .RPT and store the names in an array my @files=glob("*.RPT"); my $i; my $x; my $readline; #open file containing expressions to search for open FILE, "params.txt" or die "Couldn't open the file. $!"; my @params=; close FILE; # remember to close what you open #for each file in array open and search for string foreach $i (@files){ open INPUT, "$i" or die "Couldn't open the file. $!"; my $thisout = substr($i, 0, index($i, ".")) . ".txt"; # form the name of the output .txt file open OUTPUT, ">$thisout"; while ($readline = ){ # for each line in the input file, foreach $x (@params) { # for each parameter in the list chomp($x); # get rid of any newline nonsense that might be there if ($readline =~ m/$x/){ # if the param is in the line, print the line. chomp($readline); print OUTPUT "$readline\n"; } } } close INPUT; # close what you open close OUTPUT; # close what you open }