The following differences apply:use IPC::Open3; $pid = open3($wtr, $rdr, $err, $cmd_with_args); $pid = open3($wtr, $rdr, $err, $cmd, "arg1", "arg2", ...);
The first two arguments (
$rdr) are passed in
the opposite order.
A third filehandle can be passed, for standard error. If this argument is
"", then STDERR and STDOUT for
are on the same filehandle.
$wtr begins with
<, then the leading
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
$err begins with
STDOUT or STDERR directly to that file rather than to the parent.