while (<>) { ... # code for each line } #### @ARGV = ('-') unless @ARGV; while ($ARGV = shift) { open(ARGV, $ARGV) or warn "Can't open $ARGV: $!\n"; while () { ... # code for each line } }