J'utilise ça
cat foo.txt | sed '/bar/d'
pour supprimer les lignes contenant la chaîne bar dans le fichier.
Je voudrais cependant supprimer ces lignes et la ligne juste après . De préférence en sed , awk ou un autre outil disponible dans MinGW32.
C'est une sorte d'inverse de ce que je peux obtenir dans grep avec -A et -B pour imprimer les lignes correspondantes ainsi que les lignes avant/après la ligne correspondante.
Existe-t-il un moyen simple d'y parvenir ?
Réponse acceptée :
Si vous avez GNU sed (donc Linux non embarqué ou Cygwin) :
sed '/bar/,+1 d'
Si vous avez bar sur deux lignes consécutives, cela supprimera la deuxième ligne sans l'analyser. Par exemple, si vous avez un fichier bar de 3 lignes /bar /foo , le foo la ligne restera.