Digamos que tengo este archivo de línea 857835, que contiene cosas como esta:
a1
rubbish1
rubbish2
rubbish3
rubbish4
a1
rubbish5
rubbish6
rubbish7
rubbish8
Y deseo eliminar todas las ocurrencias de a1
y la siguiente línea ( rubbish1
y rubbish5
en este ejemplo). ¿Cómo lo hago?
He intentado grep 'a1' -v -A1
en vano, y mis habilidades de sed no son realmente geniales:}
Mi Google-fu no ha podido ayudarme esta vez, ¡alguien por favor ayuda!
grep
text-processing
sed
rayfoo
fuente
fuente
^
y$
en esa coincidencia, forzar la coincidencia de líneas enteras.Lo siguiente funcionará en no GNU
sed
(la,+1
sintaxis de la dirección es una extensión GNU):"Comenzando en una línea que lee exactamente 'a1', y terminando en la siguiente línea para la cual existe el comienzo de la línea (es decir, la siguiente línea), elimine".
Sin embargo, es mucho menos extensible que la respuesta de @ asoundmove, ya que eliminar un número diferente de líneas tomaría un script completamente diferente.
fuente