Existe uma maneira de fazer com que esse código perl capture stderr e stdout de um tcsh?

    open UNIT_TESTER, qq(tcsh -c "gpath $dir/$tsttgt;  bin/rununittests"|);
    while(<UNIT_TESTER>){
        reportError($ignore{testabort},$tsttgt,"test problem detected for $tsttgt:$_ ") if /core dumped/;
        reportError($ignore{testabort},$tsttgt,"test problem detected for $tsttgt:$_ ") if /\[  FAILED  \]/;
        writelog($tsttgt,$_);
    }
    close UNIT_TESTER;

Eu tentei redirecionar stderr para stdout usando esta sintaxe, mas não funcionou:

open UNIT_TESTER, qq(tcsh -c "gpath $dir/$tsttgt;  bin/rununittests >& "|);

Eu também li a discussão sobre a FAQ do perl, mas isso foi em relação ao bash:http://www.perl.com/doc/FAQs/FAQ/oldfaq-html/Q5.15.html

questionAnswers(4)

yourAnswerToTheQuestion