在Ansible中,可以使用通配符、正则表达式或全局搜索删除文件。下面是一些示例代码来说明如何实现这些解决方法:
- name: 删除以.log结尾的文件
hosts: all
tasks:
- name: 删除文件
file:
path: /path/to/files/*.log
state: absent
这将删除目标主机上所有以.log
结尾的文件。
- name: 删除匹配正则表达式的文件
hosts: all
tasks:
- name: 查找匹配的文件
find:
paths: /path/to/files/
patterns: '*.log'
use_regex: yes
register: files_to_delete
- name: 删除文件
file:
path: "{{ item.path }}"
state: absent
loop: "{{ files_to_delete.files }}"
这将查找目标主机上所有以.log
结尾的文件,并删除它们。
- name: 全局搜索删除文件
hosts: all
tasks:
- name: 查找文件
find:
paths: /path/to/files/
patterns: '*.log'
register: files_to_delete
- name: 删除文件
file:
path: "{{ item.path }}"
state: absent
loop: "{{ files_to_delete.files }}"
这将在目标主机上全局搜索以.log
结尾的文件,并删除它们。
请根据您的需求选择适合的解决方法,并根据您的文件路径和文件名模式进行相应的更改。