gpt4 book ai didi

ansible - 删除文件夹文件夹内早于 x 天的文件

转载 作者:行者123 更新时间:2023-12-05 08:37:37 25 4
gpt4 key购买 nike

我想使用 ansible 删除旧文件。我有一个数据日志文件夹,在这个文件夹中我有多个目录:

/data/log/folder1/
/data/log/folder2/
....

我尝试使用这个 ansible 剧本:

---
- hosts: all
tasks:
- name: find all files that are older than 10 days
find:
paths: /data/log/*/
age: 10d
recursive: yes
register: filesOlderThan10
- name: remove older than 10
file:
path: "{{ item.path }}"
state: absent
with_items: "{{ (filesOlderThan10.files }}"

当我启动 playbook 时,没有任何内容被删除,我不确定我是否可以使用这种语法 /data/log/*/
因此,我正在寻找改进此代码的建议

最佳答案

到目前为止,我在剧本中发现了三四个错误

  1. 如果您需要删除您没有权限的文件,请使用 become 或确保其在 config/inventory 中设置。
  2. 路径:应该是完全合格的路径,我相信路径中不接受通配符它应该是路径:/data/log
  3. “递归”不是查找模块的正确选项。应该是'递归'
  4. 最后一行有一个不需要的'('。

下面的代码应该可以工作

---
- hosts: all
tasks:
- name: find all files that are older than 10 days
find:
paths: /data/log
age: 10d
recurse: yes
register: filesOlderThan10
- name: remove older than 10
file:
path: "{{ item.path }}"
state: absent
with_items: "{{ filesOlderThan10.files }}"

关于ansible - 删除文件夹文件夹内早于 x 天的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65178367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com