Ansible lineinfile转义特殊字符
问题描述:
我试图用ansible
替换远程文件中的一行。Ansible lineinfile转义特殊字符
这是一个php
文件,其中包含:
'cache' => true,
我尝试了很多不同的解决方案,但没有一个奏效。我觉得我太靠近了,但我做不到。你可以帮我吗? 这是我做了什么:
lineinfile: "dest=/home/ubuntu/www/2.5.0/app/config/preprod/app.php regexp=^\'cache\'=> line=\'cache\' => {{ var }}"
var
是真或假,是通过命令行设置的参数。输出显示了一条线被添加。但这不是我想要的。先谢谢你。
答
避免使用复杂的情况下param=value
,使用字典风格相反,它是一个更容易阅读:
- lineinfile:
dest: "/home/ubuntu/www/2.5.0/app/config/preprod/app.php"
regexp: "^'cache' =>"
line: "'cache' => {{ var | string | lower }},"