linux企业实战 --ansible常用模块之文件操作(find & replace)

一、find 模块

find模块可以班帮助我们再远程主机中查找符合条件的文件,就像find命令

1. 模块参数

参数含义
paths必须参数,指定在哪个目录中查找文件,可以指定多个路径,路径间用逗号隔开,此参数有别名,使用别名path或者别名name可以代替paths。
recurse默认情况下,只会在指定的目录中查找文件,也就是说,如果目录中还包含目录,ansible并不会递归的进入子目录查找对应文件,如果想要递归的查找文件,需要使用recurse参数,当recurse参数设置为yes时,表示在指定目录中递归的查找文件
hidden默认情况下,隐藏文件会被忽略,当hidden参数的值设置为yes时,才会查找隐藏文件
file_ type状认情 况下,ansible只会根据条件查找"文件",并不会查找"目录"或"软链接"等文件类型,如果想要指定查找的文件类型,可以通过file_ type指定文件类型,可指定的文件类型有any、directory、 file、 link 四种。
patterns使用此参数指定需要查找的文件名称,支持使用shell (比如通配符)或者正则表达式去匹配文件名称,默认情况下,使用shell匹配对应的文件名,如果想要使用python的正则去匹配文件名,需要将use_ regex参数的值设置为yes。
use_ regex默认情况下,find模块不会使用正则表达式去解析patterns参数中对应的内容,当use_ regex设置为yes时,表示使用python正则解析patterns参数中的表达式,否则,使用glob通配符解析patterns参数中的表达式。
contains使用此参数可以根据文章内容查找文件,此参数的值为一个正则表达式,find模块会根据对应的正则表达式匹配文件内容。
age使用此参数可以根据时间范围查找文件,默认以文件的mtime为准与指定的时间进行对比,比如,如果想要查找mtime在3天之前的文件,那么可以设置age=3d,如果想要查找mtime在3天以内的文件,可以设置tage=-3d,这里所说的3天是按照当前时间往前推3天,可以使用的单位有秒(s)、分(m)、 时(h)、天(d)、 星期(w)。
age_ stamp文件的时间属性中有三个时间种类,atime、ctime、 mtime, 当我们根据时间范围查找文件时,可以指定以哪个时间种类为准,当根据时间查找文件时,默认以mtime为准。
size使用此参数可以根据文件大小查找文件,比如,如果想要查找大于3M的文件,那么可以设置size=3m,如果想要查找小于50k的文件,可以设置size=-50k,可以使用的单位有t、g、m、k、b。
get_ checksum当有符合查找条件的文件被找到时,会同时返回对应文件的sha1校验码,如果要查找的文件比较大,那么生成校验码的时间会比较长

2. 应用

  1. 在ansible主机查找远程主机目标文件的指定内容

在这里插入图片描述

在这里插入图片描述

  1. 递归查找

在这里插入图片描述
在这里插入图片描述

  1. 查找远程主机所建立隐藏文件

在这里插入图片描述
在这里插入图片描述

  1. 查找所有类型包括隐藏文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

  1. 正则表达式查找

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 查找四天以内的文件(默认为 mtime)

在这里插入图片描述

7.查找atime在两周以内的文件

在这里插入图片描述

  1. 查找大于2g的文件

在这里插入图片描述

  1. 查找文件并返回sha1验证码

在这里插入图片描述

二、replace 模块

replace模块可以根据我们指定的正则表达式替换文件中的字符串,文件中所有被正则匹配到的字符串都会被替换

1. 模块参数

参数含义
path必须参数,指定要操作的文件
regexp必须参数,指定一个python正则表达式,文件中与正则匹配的字符串将会被替换。
replace指定最终要替换成的字符串。
backup是否在修改文件之前对文件进行备份,最好设置为yes

2. 应用

  1. 替换远程主机中的文件内容

在这里插入图片描述
在这里插入图片描述

  1. 替换远程主机文件的内容并备份

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值