http://www.perlmonks.org?node_id=824719


in reply to Tidying up after redirecting STDERR

Since I can't easily tell the two apart from the command prompt, I don't really how to be sure if anything I put in has worked.
Tell apart STDOUT and STDERR? Just redirect them to separate files:
perl yourscript.pl >stdout.txt 2>stderr.txt

Although I feel local'izing the file handles is cleaner, as suggested by JavaFan, you could alternatively store them. Then re-store them. That way, you'd have STDERR available in the block if you needed it.

my ($out, $err) = (*STDOUT, *STDERR); eval{ *STDERR = *STDOUT; # pod2html code here # ... }; *STDOUT = $out; *STDERR = $err;