正则表达式正在删除空格

正则表达式正在删除空格

我需要帮助修复正则表达式。它在写入输出文件后删除前面的空格。这是代码

  hosts: serv1
  tasks:
    - name: Rename VM hostname
      block:
        - command: hostname -f
          register: result
        - lineinfile:
            path: /home/home/setup.yml
            state: present
            regexp: 'URL: (.*)$'
            line: "URL: 'https://{{ result.stdout }}/key/auth'"

预期输出是

    KEY_USER: ‘KEY_ADMIN'
    KEY_PASS: “KEY_PASS"
    URL: 'https://serv1/key/auth'
    KEY_CLIENT: “CLIENT_KEY"
    LDAP_URL: ‘LDAP_URL'

但我明白

    KEY_USER: ‘KEY_ADMIN'
    KEY_PASS: “KEY_PASS"
URL: 'https://serv1/key/auth'
    KEY_CLIENT: “CLIENT_KEY"
    LDAP_URL: ‘LDAP_URL'

有办法修复吗?谢谢

答案1

正则表达式没有删除空格。您删除了它们。

您写道,替换行不应该有任何前导空格:

            line: "URL: 'https://{{ result.stdout }}/key/auth'"

如果您需要前导空格,则需要将其放入。它可能看起来像这样:

            line: "    URL: 'https://{{ result.stdout }}/key/auth'"

相关内容