perl -E"say(),open $fh[$_], '>', qq[file$_] or die $! for 1 .. 1e5" 1 2 3 ... 2040 2041 2042 2043 2044 2045 2046 Too many open files at -e line 1. #### open $fh, .... or die ...; close $fh; #### open $fh, ... and printf( LOG "%s(%u) opening %u\n", __FILE__, __LINE__, fileno( $fh ) ) or die ...; printf( LOG "%s(%u) closing %u\n", __FILE__, __LINE__, fileno( $fh ) ) and close $fh;