ansible 中的正则表达式用于替换"本地主机"



我正在使用 ansible 中的替换模块来替换文件中的一行

原线#listen_addresses = 'localhost'

我想将其替换为以下listen_addresses = '*'

这是我的剧本条目

replace: path=/usr/pgsql-9.6/data/postgresql.conf regexp='#listen_addresses(s)*='locahost'' replace='listen_addresses = *' remote_src=yes backup=yes

上述剧本无法进行替换。请指导我实际的正则表达式

你不需要放整行来替换它,只需匹配行首(使用^(文本加上贪婪匹配 (.*(

tasks:
- replace: 
path: /usr/pgsql-9.6/data/postgresql.conf
regexp: '^#listen_addresses.*'
replace: 'listen_addresses = *'
remote_src: yes
backup: yes

我还建议以这种方式重新格式化代码(注意=:替换(,这更具可读性