ansible删除目录下所有内容的方法

 更新时间:2019年06月24日 09:16:05   作者:李欢欢  
这篇文章主要介绍了ansible删除目录下所有内容的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

使用ansible的同学都知道,ansible只支持新增删除具体的某个文件夹或者文件,如下所示:

1. 创建目录,删除整个目录

- name: Create a directory if it does not exist
 file:
  path: /appvol/some_directory
  state: directory
  mode: '0755'
 
- name: Remove a directory if it exist
 file:
  path: /appvol/some_directory
  state: absent

2.创建文件,删除单个文件

- name: Create a file if it does not exist
 file:
  path: /appvol/some_directory/hello.txt
  state: touch
  mode: '0755'
 
 
- name: Remove a file if it exist
 file:
  path: /appvol/some_directory/hello.txt
  state: absent

对于某些场景,我们想清空log文件夹或者缓存文件夹,这个时候就仅仅需要删除目录下的所有内容而已。

3.删除某个目录下的所有文件,或者符合条件的文件名

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

参考ansible官方文档:

ansible file 模块参考: refer to https://docs.ansible.com/ansible/latest/modules/file_module.html?highlight=file

ansible shell模块参数:https://docs.ansible.com/ansible/latest/modules/shell_module.html?highlight=shell

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 配置管理和服务发现之Confd和Consul使用场景详解

    配置管理和服务发现之Confd和Consul使用场景详解

    这篇文章主要为大家介绍了配置管理和服务发现之Confd和Consul使用场景详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • pgpool-II搭建集群,实现高可用与读写分离

    pgpool-II搭建集群,实现高可用与读写分离

    pgpool-II是开源的PostgreSQL数据库连接池、负载均衡和高可用解决方案,支持多种工作模式,包括原始模式、内置复制模式和主/备模式,本文介绍pgpool-II的架构、进程、工作模式以及配置步骤,包括环境规划、系统准备、软件安装、数据库主节点配置、pgpool配置和集群启动
    2025-04-04
  • 如何快速搭建一个自己的服务器的详细教程(java环境)

    如何快速搭建一个自己的服务器的详细教程(java环境)

    这篇文章主要介绍了如何快速搭建一个自己的服务器的详细教程(java环境),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • win10遇到服务器启动失败 80端口被占用如何解决

    win10遇到服务器启动失败 80端口被占用如何解决

    这篇文章主要为大家详细介绍了win10遇到服务器启动失败,80端口被占用的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • nfs和web服务器的搭建过程

    nfs和web服务器的搭建过程

    这篇文章主要介绍了nfs和web服务器的搭建过程,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-07-07
  • 轻量级域名解析服务器之dnsmasq的介绍与部署

    轻量级域名解析服务器之dnsmasq的介绍与部署

    dnsmasq这个轻量级的dns服务器,具有开源,搭建简单,维护成本低的优点,符合生产环境需求,下面这篇文章主要给大家介绍了关于轻量级域名解析服务器之dnsmasq的介绍与部署的相关资料,需要的朋友可以参考下
    2022-07-07
  • svn服务器安装在centos7系统平台

    svn服务器安装在centos7系统平台

    本文给大家介绍的是在centos7系统上安装svn服务器的详细教程,有需要的小伙伴可以参考下
    2018-04-04
  • cwRsync提示password file must be owned by root when running as root的解决方法

    cwRsync提示password file must be owned by root when running as

    今天在配置服务器的时候,用了rsync4.10版本,客户端是2003服务器端是2008 r2 同步的时候提示password file must be owned by root when running as root问题,以前用老版本的时候没见过,还好看了下面的文章解决了,特分享下
    2015-08-08
  • 1分钟搭建VPN服务器的详细过程

    1分钟搭建VPN服务器的详细过程

    IPsec即Internet Protocol Security,是一种用于保护互联网协议(IP)传输数据的协议,VPN(Virtual Private Network)则是一种基于公共网络构建的专用网络,在其中可以进行安全数据传输,本文将介绍如何通过使用Docker来快速搭建IPsec VPN Server,感兴趣的朋友一起看看吧
    2023-12-12
  • LuLu打造一款macOS的开源防火墙

    LuLu打造一款macOS的开源防火墙

    LuLu是一款macOS下的免费且开源防火墙 ,其主要用于阻止未经授权的(传出)网络流量,除非用户明确允许,下面通过本文给大家分享通过LuLu打造一款macOS的开源防火墙功能,一起看看吧
    2018-03-03

最新评论