ansible删除指定目录下所有文件

1、直接使用shell模块,不过估计会报warning,需要结合warn=false
- name: "删除/tmp/test1目录下所有文件"
shell: "rm -rf /tmp/test1/* warn=false"

2、使用shell显示路径下所有文件,使用file模块删除
#先使用shell模块获取该目录下所有文件名,并且存储到一个变量files_list
- name: list the files of dir some_directory
shell: ls
args:
chdir: /tmp/test1/
register: files_list
#使用with_items属性,将files_list变量以lines的形式输出,再借助file模块循环删除每个文件
- name: Remove a directory if it does not exist
file:
path: /tmp/test1/{{ item }}
state: absent
with_items:
- "{{ files_list.stdout_lines }}"
发表评论

相关文章