小编Luc*_* me的帖子

Ansible 替换变量中的多行

我有以下 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 
    "
Run Code Online (Sandbox Code Playgroud)

我还有一个文本文件,其中包含以下行:

   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
Run Code Online (Sandbox Code Playgroud)

我希望能够替换文件中与变量中的行匹配的任何行,直到“=”符号。(正则表达式:^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
Run Code Online (Sandbox Code Playgroud)

ansible

2
推荐指数
1
解决办法
7560
查看次数

标签 统计

ansible ×1