Проверьте, существует ли несколько файлов или не используется ANT

Я использую ANT для проверки количества файлов в двух банках. Я не могу проверить, существуют ли файлы одного шаблона или нет.

Например, у меня есть 2 файла, такие как /host/user/dir1/ABC1.txt и /host/user/dir1/ABC2.txt.

Теперь я хочу проверить, есть ли файл шаблона "/host/user/dir1/ABC*" или нет??

Я могу проверить отдельный файл /host/user/dir1/ABC1.txt, используя доступный тег, но не могу проверить файлы на предмет определенного шаблона.

заранее спасибо.

Для отдельного файла отлично работает следующее:

<if>
    <available file="${client.classes.src.dir}/${class_to_be_search}.class"/>
    <then>
         <echo> File ${client.classes.src.dir}/${class_to_be_search}.class FOUND in src dir 

         </echo>
         <echo> Update property client.jar.packages.listOfInnerClass</echo>
    </then>
    <else>
         <echo> File ${client.classes.src.dir}/${class_to_be_search}.class NOT FOUND      in src dir.  
         </echo>
    </else>
</if>

Но я хочу найти несколько файлов: что-то вроде: ${dir.structure}/${class_to_be_search}$*. Class

1 ответ

Задача if не является частью ядра ANT.

В следующем примере показано, как это можно сделать с помощью задачи условия ANT. Вы можете использовать любой шаблон, который вы хотите в наборе файлов. Выполнение цели впоследствии зависит от того, как было установлено свойство file.found:

<project name="demo" default="run">

    <fileset id="classfiles" dir="build" includes="**/*.class"/>

    <condition property="file.found">
        <resourcecount refid="classfiles" when="greater" count="0"/>
    </condition>

    <target name="run" depends="found,notfound"/>

    <target name="found" if="file.found">
        <echo message="file found"/>
    </target>

    <target name="notfound" unless="file.found">
        <echo message="file not found"/>
    </target>

</project>
Другие вопросы по тегам