我正在创建一个执行操作的剧本,但有一个条件:仅当日期早于x天时才执行我的命令
这是我尝试使用的
with_items:“ {{(my_register | sort(attribute ='ctime'))[30:] | list}}”]
- name: some action
shell: some command | grep command
register: my_register
ignore_errors: True
- name: conditional action
shell: command
become: yes
when: my_register
with_items: "{{ (my_register | sort(attribute='ctime'))[x days:] | list }}"
我希望检查“ my_register”中的信息是否早于x天。
我已经用测试文件进行了测试。请检查这是否对您的情况有用。在什么情况下可以给出如下
- name: Test
stat:
path: /tmp/test.txt
register: output
- name: conditional action
shell: command
become: yes
when: (ansible_date_time.epoch|int - output.stat.ctime|int) < 2592000
注意:2592000是30天,以秒为单位