Ich möchte passen (und zu entfernen oder mit einer Kommentarzeile ersetzen) ein Block von Zeilen:Werden mehrzeilige Treffer in lineinfile unterstützt?
daemon.*;mail.*;\
news.err;\
*.=debug;*.=info;\
*.=notice;*.=warn |/dev/xconsole
ich versuchte, sie mit daemon(?:.|\n)*xconsole
in lineinfile
passen aber das Spiel scheint nicht zu passieren: eine Ersatzleitung zugegeben, aber die alte Linie bleibt:
- name: remove xconsole from rsyslog.conf
lineinfile:
dest: /etc/rsyslog.conf
regexp: daemon(?:.|\n)*xconsole
state: absent
# also tried to add the next line to replace with a comment
#line: "# removed by ansible"
solche Blöcke werden unterstützt?
Hinweis: Ich weiß über blockinfile
, die großartig ist, um das Hinzufügen/Entfernen von begrenzten Blöcken zu verwalten. Ich glaube nicht, dass sie mit nicht-einfügbar-eingefügten Blöcken arbeiten (die durch eine Regex übereinstimmen).