У меня есть файл, в котором есть одна или несколько записей, как показано в приведенной ниже команде grep:
grep SSLFile /tmp/httpd.conf
Output:
SSLFile /web/certs/mycert7.crt
I wi sh, чтобы извлечь имя файла 2-й столбец из вывода, т.е. "/ web / certs /mycert7.crt "используя ansible для всех записей, которые начинаются с SSLFile с использованием Ansible регулярных выражений.
Ниже приведен любой ansible playbook:
- name: Find file
lineinfile:
path: "/tmp/httpd.conf"
regexp: '^SSLFile .*'
state: absent
check_mode: yes
changed_when: false
register: getfiles
- debug:
msg: "{{ item.split()[1] }}"
with_items:
- "{{ getfiles.stdout_lines }}"
К сожалению, я не получаю greped строка, а также получил ошибку времени выполнения, как показано ниже:
TASK [Find file] ***************************************
task path: /app/test.yml:895
ok: [10.9.9.34] => {"backup": "", "changed": false, "found": 0, "msg": ""}
TASK [debug] *******************************************************************
task path:
/app/test.yml:905
fatal: [10.9.9.34]: FAILED! => {"msg": "template error while templating string: unexpected char u'_' at 7. String: {{ getfiles.stdout_lines }}"}
Вот httpd.conf
<VirtualHost *:443>
<LimitExcept GET POST>
order deny,allow
deny from all
</LimitExcept>
</Location>
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:RSA+AESGCM:RSA+AES:!SHA:!MD5:!RC4:!3DES
SSLHonorCipherOrder On
SSLFile /tmp/certs/mycert.crt
SSLKeyFile /tmp/certs/mycert.key
Я попытался regex ^ SSLFile, и он даже не соответствует строке на https://regex101.com/
Обновление: Попытка регулярного выражения: '\\ sSSLFile. *' Получила совпадение, однако не может распечатать из-за ошибки ниже.
task path: /tmp/test.yml:914
ok: [10.9.9.34] => {"backup": "", "changed": false, "found": 1, "msg": "1 line(s) removed"}
TASK [debug] *******************************************************************
task path: /tmp/test.yml:924
fatal: [10.9.9.34]: FAILED! => {"msg": "template error while templating string: unexpected char u'_' at 7. String: {{ getfiles.stdout_lines }}"}
Подскажите, пожалуйста, в чем проблема с моей пьесой и как я могу заставить ее работать?