avoir ce fichierligne append sed sur 1 seule occurrence
ServerName *
ServerAlias *
ServerAlias *
<Directory>
Je veux ajouter une nouvelle ligne après la première apparition de ServerAlias avec le texte S2. J'ai essayé ce qui suit
sed '/ServerAlias/ a\S2\' foo
Mais après toutes les concatène occurrences.
Mon résultat final devrait être
ServerName *
ServerAlias *
S2
ServerAlias *
<Directory>
Vous devrez probablement ancrer l'expression rationnelle pour éviter de faire correspondre "ServerAlias" dans les commentaires. –
Pour éviter d'imprimer deux fois la ligne correspondante, utilisez: 'awk '{print}/^ ServerAlias / &&! N {print" S2 "; n ++} 'file' –
Fixe. Merci pour la grande observation. –