#!/usr/bin/perl use strict; use warnings; use IPC::Open3; my @cmd = ( perl => (-e => 'print STDERR "x"x1024 for 1..100') ); local(*HIS_IN, *HIS_OUT, *HIS_ERR); my $childpid = open3(*HIS_IN, *HIS_OUT, *HIS_ERR, @cmd); close HIS_IN; my(@outlines) = ; waitpid($childpid, 0); if ($?) { printf "Status is: %04X\n", $?; }