my @out; my $first_child; $|=1; my $pid= open($first_child, '-|'); if ($pid) { # parent @out= <$first_child>; } else { my(@child, @childpid); for (my $i=0; $i<$children; ++$i) { $childpid[$i]= open($child[$i], '|-'); if ($childpid[$i]) { # do nothing yet } else { $call = ; # sorry, can't show that open (OUT, "| $call"); close (OUT); exit; } } foreach (@child) { close $_; } exit; }