foreach my $filename ( @files ) { open ( FILE, "<", $filename ) or die( "Couldn't open $filename: $!" ); my $batch = ""; INNER: while ( ) { $batch .= $_; last INNER if eof || m/^\s*go\s*$/i; } $dbh->do( $batch ) if ( $batch =~ m/^\s*go\s*$/msi ); }