2

要求:

运行svn log -l 1命令,这将有这样的输出。

    ------------------------------------------------------------------------
    r2633 | name | 2012-11-07 17:28:20 +0530 (Wed, 07 Nov 2012) | 1 line
    My comment.
    ------------------------------------------------------------------------

我需要提取修订号 2633 并将其分配为属性。我宁愿避免使用 ant-contrib。

我尝试了什么:

<echo>Run svn log -l 1</echo>
<exec executable="svn" outputproperty="svn.output" failonerror="false">
    <arg line="log -l 1"/>
</exec>   
<echo message="Output was: ${svn.output}" />

这会在属性 ${svn.ouput} 中获得上述输出,但我不确定如何从中提取版本。

其他选项是将变量写入文件中,但我又如何将版本提取到属性中?

提前致谢。

4

1 回答 1

2

没有一种干净的方法可以从标准 Ant 中的属性中提取子字符串。有关一些替代解决方案,请参阅此 Stack Overflow 答案

于 2012-11-30T17:35:05.117 回答