J'ai besoin de modifier un fichier comme celui-ci:
auto wlx00
allow-hotplug wlx00
iface wlx000 inet dhcp
iface wlx000 inet6 auto
post-up sysctl -w net.ipv6.conf.wlx000.accept_ra=2
auto wlx000
l'objectif est de supprimer les lignes commençant par «iface ... inet6» et également de supprimer les suivantes commençant par l'espace (peut être aucune ou plusieurs):
iface wlx000 inet6 auto
post-up sysctl -w net.ipv6.conf.wlx000.accept_ra=2
et garder le reste intact pour le résultat suivant:
auto wlx00
allow-hotplug wlx00
iface wlx000 inet dhcp
auto wlx000
J'ai essayé avec sed en utilisant comme suit:
sed -i.old -r -e "/iface\s*\w*\s*inet6.*/,\${d;/^\s.*/d;}" /etc/configfile
mais il supprime tout en commençant au bon endroit mais en effaçant jusqu'à la fin. Je veux juste supprimer les lignes qui regardent l'espace après le texte iface sélectionné.