replace 模块可以根据我们指定的正则表达式替换文件中的字符串,文件中所有被匹配到的字符串都会被替换。
常用参数:
path参数 :必须参数,指定要操作的文件,2.3版本之前,只能使用 dest, destfile, name指定要操作的文件,2.4版本中,仍然可以使用这些参数名,这些参数名作为 path 参数的别名使用。
regexp参数 : 必须参数,指定一个 python 正则表达式,文件中与正则匹配的字符串将会被替换。
replace参数 : 指定最终要替换成的字符串。
backup参数 :是否在修改文件之前对文件进行备份,最好设置为yes。
把 127.0.0.1 主机中的 /test/test1 文件中的所有 ABC 替换成 abc,并进行备份
[root@Study04 ~]# ansible 127.0.0.1 -m replace -a “path=/test/test1 regexp=‘ABC’ replace=abc backup=yes”
127.0.0.1 | CHANGED => {
“backup_file”: “/test/test1.10655.2019-02-16@13:17:04~”,
“changed”: true,
“msg”: “1 replacements made”
}
[root@Study04 ~]# cat /test/test1
123
abcDefg
[root@Study04 ~]# cat /test/test1.10655.2019-02-16@13:17:04~
123
ABCDefg