sed fait exactement ce que tu lui demandes là...
sed -e "/Directory /c <Directory /> Options None AllowOverride None Order allow,deny" /tmp/toto
Modifie toutes les lignes comportant "Directory " (avec l'espace) par le texte : "<Directory /> Options None AllowOverride None Order allow,deny"... ce qui fait correspondre aussi bien <Directory /> que <Directory /...>
Si tu veux simplement ajouter "Options None AllowOverride None Order allow,deny" après <Directory />, il faut le lui dire :
sed '/^<Directory \/>/aOptions None\nAllowOverride None\nOrder allow,deny' /tmp/toto
/^<Directory \/>/ => cherche <Directory /> en début de ligne (c'est le / qu'il faut protéger, pas le >)
en plus, utilise plutôt a pour ajouter une ligne, et les \n pour des sauts de ligne...
Edit: correction, j'ai relu ton message
Partager