Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Modules to handle backticks?

by Rudif (Hermit)
on Nov 24, 2002 at 23:19 UTC ( #215549=note: print w/replies, xml ) Need Help??


in reply to Modules to handle backticks?

>> ... and gather stdout, stderr.

Quoting from perlop ...

qx/STRING/ ... To capture a command's STDERR and STDOUT together: $output = `cmd 2>&1`;
This works for me, on WinXP, as in the example below.
To generate output going to stdout in one case and to stderr in another case, my script calls a Perforce command (p4 change -o) with a good changelist (43026) - this writes to stdout, and then with an inexistent one (143026) - this writes to stderr.
#!/usr/bin/perl use strict; use warnings; printf STDERR "1 stdout: %s\n\n", ` p4 change -o 43026 `; printf STDERR "2 stdout: %s\n\n", ` p4 change -o 143026 `; printf STDERR "3 stdout+stderr 2>&1: %s\n\n", ` p4 change -o 143026 +2>&1 `; __END__ # typical output on my machine # 1 stdout: # A Perforce Change Specification. Change 143026 unknown. 2 stdout: 3 stdout+stderr 2>&1: Change 143026 unknown.
HTH
rudif

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (3)
As of 2023-01-29 06:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?