要在文件集中搜索多个“searchStrings”,下面的 ANT 似乎可以完成这项工作。
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="/usr/share/java/ant-contrib.jar"/>
</classpath>
</taskdef>
<loadfile property="list" srcFile="searchStrings.txt"/>
<echo>.:${list}:.</echo>
<target name="main">
<for list="${list}" param="search4" delimiter="${line.separator}">
<sequential>
<fileset id="existing" dir="../src">
<patternset id="files">
<include name="**/*.xul"/>
</patternset>
</fileset>
<resourcecount property="count">
<fileset id="matches" dir="../src">
<patternset refid="files" />
<contains text="@{search4};" />
</fileset>
</resourcecount>
<echo message="Found '@{search4}' in files : '${count}'"/>
</sequential>
</for>
</target>
但是对于每个单独的 searchString 我需要出现的次数。回显消息“找到...”只给出第一个结果,更糟糕的是,它对所有文件重复该数字。
尝试在 resourcecount 块内添加回声,但失败了。
如何修改它以获取所有 searchStrings 的列表?