in reply to Scanning a file for all ERRORs, then sending only one page (break out?)

You could re-arrange your code a bit. You are paging every time an ERROR is found (and so you really don't need to be checking $errorcount each time you page either). I suspect you don't really want to print $errorcount each time it is incremented either. You also seem to want to page poor Mike for each file that contains an error, so you need to re-set your $errorcount after each file too. Actually if you are going to page him for each bad file, you might as well tell him the filename too. The loop could become:
foreach my $logrecord (@errorcheck) { my $errorcount; open (LOGFILE, $logrecord); while (<LOGFILE>) { if(/$error/) { $errorcount++; } } print "$logrecord: $errorcount\n"; if($errorcount != 0) { system ('page Mike "An error was encountered processing file $logr +ecord. Check the HelpDeskLog\ERRORS dir for more information."'); #last; here if you don't want to bother Mike more than once }
You should consider checking that the opens and the system call in fact worked too. Probably the best solution would be to keep a count of all errors, and all files that contained errors, and then just page the long suffering Mike with a message like "$errortotal errors found in $badfiletotal files".

--
I'd like to be able to assign to an luser