foreach $file (@filenames) { open (IN,"$file") || die "Cannot open \"$file\" for input: $!.\n"; @log_in = ; close IN; print "Processing $file . . .\n"; init_vars(); foreach $ln (@log_in) { if ($alreadymatched) { $logfile[$count] = $ln; $count++; } else { do { if ($ln =~ /^$month:$curday/) { $alreadymatched = 1; $logfile[0] = $ln; } $curday++; } until ($alreadymatched); } } open (IN,">done.$file") || die "Cannot open \"$file\" for output: $!."; foreach $writelog (@logfile) { print IN $writelog; } close IN; }