foreach (@files) { my $FH = $_; open (FILE, "<$FH"); OUTER: while ((my $line_B = )) { last OUTER unless defined($line_B = <$FH>); ## The message applies to this line my $batch; do { $batch .= $line_B; } until ($line_B =~ m/^\s*go\s*$/i); $dbh->do($batch) if ($line_B =~ m/^\s*go\s*$/i); } }