You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Windows代理任务结束后清理指定测试项目文件夹内容?

在Azure Windows代理中删除指定文件夹内容的YAML实现

你可以通过以下两种常用方式在Azure DevOps YAML脚本中完成C:\agent_work\1\s文件夹内容的删除操作,适配Windows代理环境:

方法一:使用PowerShell任务

PowerShell的Remove-Item命令可以灵活处理文件和目录的递归删除,适合需要精细控制的场景:

- task: PowerShell@2
  displayName: '清空测试项目文件夹内容'
  inputs:
    targetType: 'inline'
    script: |
      # 递归删除文件夹内所有内容,保留文件夹本身
      Remove-Item -Path "C:\agent_work\1\s\*" -Recurse -Force -ErrorAction SilentlyContinue

参数说明:

  • -Recurse:递归删除子文件夹及其中的文件
  • -Force:强制删除只读文件或受保护的项目
  • -ErrorAction SilentlyContinue:避免因文件夹为空时触发错误中断任务

方法二:使用Cmd命令行任务

如果习惯用CMD命令,可选择以下两种脚本:

方式A:删除后重建文件夹

适合需要确保文件夹存在的场景:

- task: CmdLine@2
  displayName: '清空测试项目文件夹内容'
  inputs:
    script: |
      # 静默删除文件夹及所有内容,随后重建空文件夹
      rmdir /s /q "C:\agent_work\1\s"
      mkdir "C:\agent_work\1\s"

方式B:仅删除文件夹内内容(保留文件夹)

- task: CmdLine@2
  displayName: '清空测试项目文件夹内容'
  inputs:
    script: |
      # 强制递归删除所有文件及子目录,静默执行
      del /f /s /q "C:\agent_work\1\s\*.*"

参数说明:

  • /s:处理所有子目录中的文件
  • /q:静默模式,不提示确认
  • /f:强制删除只读文件

注意事项

  • 确保Azure代理的运行账号拥有该文件夹的删除权限,默认Windows代理账号通常具备此权限,若有特殊权限配置需提前验证
  • 优先选择保留文件夹的删除方式,避免因文件夹缺失导致后续任务执行失败

内容的提问来源于stack exchange,提问作者Narine Grigoryan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 12:29:56