【发布时间】:2018-05-16 08:59:51
【问题描述】:
我有以下 Ansible 变量:
test_entries:
"
test-auth-ip=192.168.1.22
test-auth-serv=example1.com
test-auth-net=192.168.1.254
test-auth-blabla=test123
"
我还有一个文本文件,其中包含以下几行:
test-auth-str1=null
test-auth-str2=null
test-auth-serv=null
test-auth-net=0.0.0.0
test-auth-str3=null
test-auth-str4=null
我希望能够替换文件中与变量中的行匹配的任何行,直到“=”符号。 (正则表达式:^test-auth(.*?=))
我阅读了 Ansible 文档。用于“lineinfile”和“替换”功能。然而, 我找不到如何用正则表达式逐行匹配。
预期结果
test-auth-str1=null
test-auth-str2=null
test-auth-serv=example1.com
test-auth-net=192.168.1.254
test-auth-str3=null
test-auth-str4=null
【问题讨论】:
-
我不确定我是否理解您要替换的内容。您可以添加具有预期输出的部分吗?
-
将原始字符串分割成行(标记),循环调用
replace模块。
标签: ansible