Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^3: How to restore from redirecting STDOUT to variable?

by mbethke (Hermit)
on Jan 17, 2013 at 04:30 UTC ( #1013706=note: print w/ replies, xml ) Need Help??


in reply to Re^2: How to restore from redirecting STDOUT to variable?
in thread How to restore from redirecting STDOUT to variable?

That you want the file descriptor dup()ed, i.e. get a new file descriptor that refers to the same output stream as STDERR and a Perl-level file handle layered on top of that.

As the open() perldoc also explains, this is even better written with an '=' after the ampersand:

open my $save_out, '>&=', \*STDOUT or die "Can't fdopen STDOUT: $!"; open STDOUT, '>&=', $save_out or die "Can't restore STDOUT: $!";
This avoids creating an all new file descriptor but reuses the system's for a new Perl file handle.


Comment on Re^3: How to restore from redirecting STDOUT to variable?
Select or Download Code
Re^4: How to restore from redirecting STDOUT to variable?
by anaconda_wly (Scribe) on Jan 17, 2013 at 06:01 UTC
    Great! Thank all!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1013706]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (6)
As of 2014-09-19 22:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (149 votes), past polls