IPC::Open3 works like IPC::Open2.
use IPC::Open3; $pid = open3($wtr
, $rdr
, $err
, $cmd_with_args
); $pid = open3($wtr
, $rdr
, $err
, $cmd
, "arg1
", "arg2
", ...);
The following differences apply:
The first two arguments ($
wtr
and
$
rdr
) are passed in the opposite
order.
A third filehandle can be passed, for standard error. If
this argument is given as “”, then STDERR and STDOUT for $cmd
are on the same filehandle.
If $wtr
begins with
<
, then the leading <
is stripped from the name, and the
remainder is assumed to be a regular filehandle for an open file,
rather than a reference to a typeglob. open3
opens this file as STDIN for
$cmd
and closes it in the
parent. Likewise, if $rdr
or
$err
begins with >
, then $cmd
directs STDOUT or STDERR directly
to that file rather than to the parent.
3.137.172.115