Cómo seleccionar líneas entre dos patrones de marcador que pueden aparecer varias veces con awk / sed

Utilizandoawk osed ¿Cómo puedo seleccionar las líneas que están ocurriendo entre dos patrones de marcadores diferentes? Puede haber múltiples secciones marcadas con estos patrones.

Por ejemplo: supongamos que el archivo contiene:

abc
def1
ghi1
jkl1
mno
abc
def2
ghi2
jkl2
mno
pqr
stu

Y el patrón de partida esabc y el patrón final esmno Por lo tanto, necesito la salida como:

def1
ghi1
jkl1
def2
ghi2
jkl2

Estoy usando sed para hacer coincidir el patrón una vez:

sed -e '1,/abc/d' -e '/mno/,$d' <FILE>

¿Hay alguna manera ensed oawk ¿Para hacerlo repetidamente hasta el final del archivo?

Respuestas a la pregunta(9)

Su respuesta a la pregunta