删除除一个以外的文件夹



在src文件夹下我有以下文件夹:daos, business和model。我想用ant脚本删除所有文件夹,除了"模型"。所以我试了:

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

删除所有文件夹,除了"model"它是空的。

试试

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

致未来的google用户:

什么对我有用:

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

删除target/以下的所有文件(目录),target/big_and_complex_dir除外。

我的预期目标是避免不必要的目录遍历,这在" big_and_complex_dir "的情况下花费了很长时间。

似乎ant的文件集解释具有不平凡的,非直观的行为,如果我们打算做递归子目录操作,我们需要用/关闭包含/排除路径。

试试这个

<delete includeemptydirs="true">
  <fileset dir="${basedir}/src" includes="**/*" excludes="model/" defaultexcludes="false"/>
</delete>

删除所有文件夹及其子目录&除了model文件夹及其子目录&SRC文件夹下的文件

相关内容

  • 没有找到相关文章

最新更新