while (<$IN> { /^\s*$/ and next; # remove empty lines /^\s*#/ and next; # remove comments /ORA/i and next; # remove lines with Oracle warnings and errors some_condition($_) or next; /File processed/ and last; # ... now do the actual processing of useful lines }