运维开发网

ant – 创建与模式匹配的所有文件的文件集,不包括具有特定兄弟文件的文件

运维开发网 https://www.qedev.com 2020-05-09 16:14 出处:网络 作者:运维开发网整理
我想创建一个匹配特定模式的文件的文件集,但是从该集中排除在同一目录中具有特定其他文件的任何文件. 例如,我想要一个匹配所有./*/file.xml文件的文件集,例如: <fileset dir="${some.dir}" includes="*/file.xml" /> …但我想排除与ignore.this文件在同一个控制器中的任何file.xml文件. 所以如果dir结构是: foo/file.
我想创建一个匹配特定模式的文件的文件集,但是从该集中排除在同一目录中具有特定其他文件的任何文件.

例如,我想要一个匹配所有./*/file.xml文件的文件集,例如:

<fileset dir="${some.dir}" includes="*/file.xml" />

…但我想排除与ignore.this文件在同一个控制器中的任何file.xml文件.

所以如果dir结构是:

foo/file.xml
bar/file.xml
bar/ignore.this

…将选择foo中的file.xml,但不会选择bar.

您可以将带有 present selector的文件集与映射器一起使用:

<fileset dir="${some.dir}" includes="*/file.xml">
    <present targetdir="${some.dir}" present="srconly">
        <mapper type="regexp" from="^(.*)/.*" to="\1/ignore.this" />
    </present>
</fileset>

也就是说,只包含名为file.xml的文件,其中在同一目录中没有相应的文件,名为ignore.this.

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号