删除文件夹,除了一个(Delete folders except one)

2019-08-18 00:27发布

src文件夹下,我有以下文件夹:DAOS,业务模型,我想使用ant脚本删除所有文件夹中,除了“样板”,所以我尝试:

    <delete includeemptydirs="true">
    <fileset dir="${basedir}/src">
    <include name="**/*"/>
    <exclude name="model/*"/>
    </fileset>
   </delete>

所有的文件夹都将被删除excpet“模型”,这是空的! 所有的文件被删除!

Answer 1:

而不是尝试

<delete includeemptydirs="true">
    <fileset dir="${basedir}/src">
        <include name="**/*"/>
        <exclude name="**/model/**"/>
    </fileset>
</delete>


Answer 2:

未来的Google员工:

什么工作对我来说:

<fileset dir="target">
    <include name="*/"/>
    <exclude name="big_and_complex_dir/"/>
</fileset>

这一切都被删除(每个文件目录)低于target/ ,除了target/big_and_complex_dir

我的预期目标是避免不需要的目录演练,这在“的情况下big_and_complex_dir ”花了很长的时间。

看来蚂蚁的文件集的解释有不平凡的,非直观的行为,我们需要关闭一个包含/排除与路径/如果我们打算做递归子目录操作为好。



文章来源: Delete folders except one
标签: ant