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

如何从Ansible win_find模块返回值中仅输出文件的完整绝对路径?

方案1:通过循环控制逐行输出路径

该方案可以完全匹配你需要的单行输出格式,解决默认打印全量返回值的问题:

- name: 递归查找C:\Downloads下的文件
  win_find:
    paths: C:\Downloads
    recurse: yes
  register: dwnlds_list

- name: 仅输出查找到的文件路径
  debug:
    msg: "{{ item.path }}"
  loop: "{{ dwnlds_list.files }}"
  loop_control:
    label: "{{ item.path }}"

你之前得到全量返回值的原因是Ansible循环默认会把整个item对象作为日志标签输出,新增loop_control配置后会限制循环标签仅展示路径,不会输出文件的大小、修改时间等其他元信息。


方案2:一次性提取所有路径输出

如果不需要逐行处理,仅需要拿到完整的路径列表,可以用map过滤器直接批量提取属性,写法更简洁:

- name: 递归查找C:\Downloads下的文件
  win_find:
    paths: C:\Downloads
    recurse: yes
  register: dwnlds_list

- name: 输出所有文件路径列表
  debug:
    msg: "{{ dwnlds_list.files | map(attribute='path') | list }}"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 19:36:04