【问题标题】:How to Recursively Delete wildcard files in TFS Build?如何在 TFS Build 中递归删除通配符文件?
【发布时间】:2011-01-06 16:58:08
【问题描述】:

我想递归删除与特定模式匹配的文件,作为我在 TFS 构建中构建后清理例程的一部分。这个我试过了...

<Delete Files="T:\DeploymentDir\**\A*" />

构建中没有错误,但它不起作用。

【问题讨论】:

    标签: build-automation tfsbuild build-definition


    【解决方案1】:

    修改您的 TFSBuild.proj 文件并在最后添加以下行(就在关闭之前):

    <Target Name="AfterDropBuild">
    <ItemGroup>
       <FilesToDelete Include="$(DropLocation)\$(BuildNumber)\**\temp*.*" />
    </ItemGroup> 
    
    <Delete Files="@(FilesToDelete)" TreatErrorsAsWarnings="true"/>
    </Target>
    

    【讨论】:

      【解决方案2】:

      我认为删除任务不会自动扩展通配符。您需要先指定一个项目组,然后将其传递给 Delete 任务:

      <ItemGroup>
        <FilesToDelete Include="T:\DeploymentDir\**\A*"/>
      </ItemGroup>
      
      <Delete Files="@(FilesToDelete)"/>
      

      从 MSBuild 3.5 开始,您可以将 ItemGroup 包含在与 Delete 任务相同的目标中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-02
        • 2014-06-22
        • 2022-11-19
        • 1970-01-01
        • 2012-12-30
        相关资源
        最近更新 更多