gpt4 book ai didi

Ant 检查一组文件是否存在

转载 作者:行者123 更新时间:2023-12-03 22:24:17 26 4
gpt4 key购买 nike

在 ant 中,如何检查一组文件(以逗号分隔的路径列表)是否存在?

例如,我需要检查 myprop 中是否列出了所有路径存在,如果存在,我想设置一个属性 pathExist :

<property name="myprop" value="path1,path2,path3"/>

所以在示例中所有 path1 path2 path3必须存在才能设置 pathExisttrue , 否则 false .

我发现对于单个资源,我可以使用 resourceexist任务,但我不知道如何将它与逗号分隔的路径列表一起使用。

如何检查一组路径是否存在?谢谢!

最佳答案

您可以使用 filelist 的组合, restrict condition为此任务。

在下面的示例中,文件列表是从带有逗号分隔的文件列表的属性创建的。使用 restrict找到不存在的文件列表。这被放置在一个属性中,如果找到所有文件,该属性将为空。

<property name="myprop" value="path1,path2,path3"/>
<filelist id="my.files" dir="." files="${myprop}" />

<restrict id="missing.files">
<filelist refid="my.files"/>
<not>
<exists/>
</not>
</restrict>

<property name="missing.files" refid="missing.files" />
<condition property="pathExist" value="true" else="false">
<length string="${missing.files}" length="0" />
</condition>
<echo message="Files all found: ${pathExist}" />

您可以使用类似这样的方法来生成列出丢失文件的失败消息:
<fail message="Missing files: ${missing.files}">
<condition>
<length string="${missing.files}" when="greater" length="0" />
</condition>
</fail>

关于Ant 检查一组文件是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5281612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com