Replace a line in a config file with ansible

后端 未结 4 1577
执念已碎
执念已碎 2021-02-07 08:18

I am new to ansible.

Is there a simple way to replace the line starting with option domain-name-servers in /etc/dhcp/interface-br0.conf with mo

4条回答
  •  北恋
    北恋 (楼主)
    2021-02-07 09:14

    we can use lineinfile module to replace a line

    using ad-hoc command:

    ansible  -m lineinfile -a "path=/etc/dhcp/interface-br0.conf regexp=''^(.*)option domain-name-servers(.*)$'' line='1option domain-name-servers 10.116.184.1,10.116.144.1,10.116.136.1;' backrefs: yes"
    

    using ansible playbook:

    - name: replacing a line in file
      lineinfile: 
        path: /etc/dhcp/interface-br0.conf 
        regexp: '^(.*)option domain-name-servers(.*)$' 
        line: 'option domain-name-servers 10.116.184.1,10.116.144.1,10.116.136.1;'
        backrefs: yes
    

    for more we can check for other options: in lineinfile module

    https://docs.ansible.com/ansible/latest/modules/lineinfile_module.html

提交回复
热议问题