在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文件夹下的文件