I understand there are several different flavors of perl on
Windows boxes (vanilla, strawberry, active state, cygwin...),
and I was wondering whether they come with anything like a Bourne
shell, in particular, I was wondering how they handle redirection
when shelling out with qx{} (aka backticks).
If you windows users do something like this, would you expect
it to work (i.e. to give you the standard output mixed with any
error messages)?
my $captured_output = qx{ some_command 2>&1 };
In fact, if you're a windows/perl person, do you think you could
run the following code and report back what kind of output you
see?
use File::Temp qw( tempfile );
use File::Spec qw( devnull );
$|=1;
my $code =<<'CODE';
$|=1;
print "ABC\n";
print STDERR "012\n";
print "IJK\n";
print STDERR "345\n";
print "XYZ\n";
print STDERR "678\n";
CODE
# create a temporary perl script file
my ($fh1, $scriptname) = tempfile( 'yap_XXXX', SUFFIX => '.pl');
print {$fh1} $code;
close( $fh1 );
my $perl = $^X;
my $devnull = File::Spec->devnull;
print "No redirect: \n";
print qx{ $perl $scriptname }, "\n";
print "Redirect errors to devnull: \n";
print qx{ $perl $scriptname 2>$devnull }, "\n";
print "Redirect merging stderr and stdout: \n";
print qx{ $perl $scriptname 2>&1 }, "\n";
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Outside of code tags, you may need to use entities for some characters:
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
|
|