【发布时间】:2021-03-15 18:14:12
【问题描述】:
我有一个要求,我需要递归地在目录中搜索某些文件。然后在每个有匹配的子目录下,获取最新的文件即可。
假设这是一个目录结构:
现在如您所见,我在两个子目录 A 和 B 中突出显示了最新的 *.txt 文件,而 C 没有。
我下面的代码将从子目录中获取所有*.txt 文件。我只是不知道如何只使用 Ansible 获取最新文件并避免使用 shell 脚本。
- name: Ansible find file examples
find:
paths: "/home/sarah/demo/"
patterns: "*txt"
recurse: yes
register: files_matched
- name: Get latest file
set_fact:
latest_file: "{{ files_matched.files | sort(attribute='mtime',reverse=true) }}"
- debug:
msg: "{{ item }}"
with_items: "{{latest_file|map(attribute='path')|list}}"
我们将不胜感激。
【问题讨论】:
标签: ansible