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

使用Ansible win_file循环删除目录失败问题求助

问题原因及解决方法

原因

你在删除任务里的loop写法出了问题:

loop:
  - '{{ paths_to_delete }}'

这种写法是把paths_to_delete这个完整列表当成单个元素塞进循环里,相当于让win_file模块去处理一个长得像[C:\xxx, C:\xxx...]的字符串路径,这显然是无效路径,所以报错。而复制任务里loop: '{{ paths_to_copy }}'是直接遍历列表的每个元素,因此能正常循环执行。

解决方法

把删除任务的loop改成直接引用paths_to_delete列表即可,不需要额外加-:

- name: clean up temporary copied directories
  win_file:
    path: '{{ item }}'
    state: absent
  loop: '{{ paths_to_delete }}'

逻辑说明

paths_to_delete通过json_query('results[*].dest')提取后已经是一个包含4个路径的列表,直接用loop: '{{ paths_to_delete }}'就能让win_file逐个处理每个路径,和复制任务的循环逻辑完全一致。

原报错信息:
"msg": "Get-AnsibleParam: Parameter 'path' has an invalid path '[C:\folders\to\copy\1','C:\folders\to\copy\2','C:\folders\to\copy\3','C:\folders\to\copy\4'] specified."

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 07:45:34