用nAnt删除目录并排除子文件夹?

时间:2010-02-11 16:09:11

标签: nant

我正在寻找我的构建来删除目录的内容而不触及某个文件夹。以下是我正在尝试的内容,它甚至对我来说都是错误的...除了它在我运行它时发生爆炸的事实。我是否需要明确删除目录的内容,同时排除我的Reports文件夹?

<delete includeemptydirs="true">
      <fileset dir="${PublishLocation}" >
        <exclude name="**Reports**"/>
      </fileset>
    </delete>

干杯。

1 个答案:

答案 0 :(得分:10)

应该是:

<delete>
  <fileset basedir="${PublishLocation}">
    <include name="**/*"/>
    <exclude name="**/Reports/**/*" />
  </fileset>
</delete>

请注意以下事项:

  • includeemptydirs="true"是默认
  • fileset的属性为basedir,而非dir
  • 如果您指定<exclude name="**/Reports/**" />而非<exclude name="**/Reports/**/*" />,则同时保留所有名为Reports的文件