# command < infile open (IN,"$infile"); @data = ; close(IN); $pid = open(READ_FROM_CHILD,"-|"); unless (defined $pid) { die "cannot fork: $!"; } if ($pid) { @result = ; close(READ_FROM_CHILD); } else { $pid = open(WRITE_TO_CHILD, "|-"); unless (defined $pid) { die "cannot fork: $!"; } if ($pid) { print WRITE_TO_CHILD @data; close(WRITE_TO_CHILD); } else { exec "$path/$command"; } }