比赛后插入线

时间:2019-01-08 10:53:17

标签: text ansible

我试图在最后一次与正则表达式匹配后在文件中插入一行。 它实际上是在文件末尾添加一行。

  tasks:
  - name: add to ansible hosts file
    lineinfile:
      dest: "hosts"
      insertafter: '^\[ansible_ssh_host\]'
      line: " test ansible_ssh_host=172.0.0.3"

我希望将其添加到包含“ ansible_ssh_host”的最后一行之后

目标文件

ansible-server ansible_ssh_host=172.0.0.1
template-server ansible_ssh_host=172.0.0.2

[tag_ansible-servers]
ansible-server

[tag_template-servers]
template-server   

1 个答案:

答案 0 :(得分:1)

'^\[ansible_ssh_host\]'表示搜索以[ansible_ssh_hosts]开头的行,没有一行不是以该行开头

尝试一下:

- name: add to ansible hosts file
  lineinfile:
    dest: "hosts"
    insertafter: 'ansible_ssh_host='
    line: " test ansible_ssh_host=172.0.0.3"