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;
J'ai essayé de rediriger stderr vers stdout en utilisant cette syntaxe, mais il ne fonctionne pas:Existe-t-il un moyen de rendre ce code perl stderr de capture ainsi que stdout d'un tcsh?
open UNIT_TESTER, qq(tcsh -c "gpath $dir/$tsttgt; bin/rununittests >& "|);
J'ai lu aussi la discussion sur la FAQ perl mais était en relation avec bash: http://www.perl.com/doc/FAQs/FAQ/oldfaq-html/Q5.15.html
C'est la notation de shell Bourne/Korn/POSIX/Bash; pas 'tcsh' à moins d'avoir subi une transformation sérieuse. –