读取每个文件名并使用ant检查字符串

时间:2013-09-10 05:24:31

标签: ant

我有特殊要求。我直接有多个报告文件。目前,我构建了使用以下代码读取所有文件并检查特定字符串的ant脚本。

<target name="GenerateReports" >
<property name="search.string" value="Internal Error" />

<fileset id="existing" dir="${report.dir}">
<patternset id="files">
   <include name="*.txt" />
</patternset>
</fileset>

<fileset id="matches" dir="${report.dir}">
<patternset refid="files" />
<contains text="${search.string}" />
</fileset>


<fail message="Found '${search.string}' in one or more test cases results in '${report.dir}' One or more test cases are failed">
    <condition>
    <resourcecount when="greater" count="0" refid="matches" />
  </condition>
 </fail>


</target>

但我想阅读每个文件,并在报告文件中提供错误所在文件的名称。 如何阅读每个文件名并阅读内容。

1 个答案:

答案 0 :(得分:0)

<foreach target="-List-File-Names" param="foreach.file" inheritall="true">
        <path>
            <fileset dir="${report.dir}" includes="*.txt">
               <contains text="${search.string}" />
            </fileset>
        </path>
</foreach>


<target name="-List-File-Names">
    <dirname property="file.dir" file="${foreach.file}"/>
    <!-- dirname now holds the file -->

</target>