in reply to Re^4: Can't close STDIN/STDOUT/STDERR
in thread Can't close STDIN/STDOUT/STDERR
What does this syntax do:
open STDERR, '>&', \*STDOUT'
because this simpler syntax seems to work:
EDIT: In fact, I just tried using STDOUT and STDERR as the third argument to open() without quotes around them, and that works too: the output is the same.1 use strict; 2 use warnings; 3 use 5.010; 4 5 open my $SAVE_STDOUT, '>&', 'STDOUT'; #<--quoted bareword 6 open STDOUT, '>', 'data1.txt'; 7 say 'hello world'; 8 9 open my $SAVE_STDERR, '>&', 'STDERR'; #<--quoted bareword 10 open STDERR, '>', 'errors.txt'; 11 warn "my warning message"; 12 13 open STDOUT, '>&', $SAVE_STDOUT; 14 open STDERR, '>&', $SAVE_STDERR; 15 say 'goodbye'; 16 warn 'my warning message #2'; --output:-- goodbye my warning message #2 at 2perl.pl line 16. $cat data1.txt hello world $cat errors.txt my warning message at 2perl.pl line 11.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^6: Can't close STDIN/STDOUT/STDERR
by ikegami (Patriarch) on Feb 10, 2010 at 03:36 UTC |