+ -
当前位置:首页 → 问答吧 → 关于perl捕获输出

关于perl捕获输出

时间:2011-03-22

来源:互联网

我通过命令行执行
Perl code
sed -n 's/.*tests="\([0-9]*\)".*/\1/p' junit_result.xml

可以得到结果93。

我写个perl脚本
Perl code
my $a=`sed -n 's/.*tests="\([0-9]*\)".*/\1/p' junit_result.xml`;
print $a;

却获取不到结果。

junit_result.xml内容为
XML code
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite name="femtobsr.rtpp.RTPP-regression_full_list" hostname="njbs-231" timestamp="2011-03-21T21:03:38" time="739.917" tests="93" failures="0" errors="0">
        <testcase classname="femtobsr.rtpp.RTPP" name="CP Stable clear" time="0.125" />
</testsuite>

不知道大家有没有遇到这个问题?

作者: ace_fei   发布时间: 2011-03-22

单引号双引号问题吧。自己调试下。比如把sed换成echo,看下输出的命令行参数是什么。

作者: iambic   发布时间: 2011-03-22