excluyendo las primeras y últimas líneas de sed / START /, / END /

Considere la entrada:

=sec1=
some-line
some-other-line

foo
bar=baz

=sec2=
c=baz

Si deseo procesar solo = sec1 = puedo, por ejemplo, comentar la sección por:

sed -e '/=sec1=/,/=[a-z]*=/s:^:#:' < input

... bueno, casi.

Esto comentará las líneas.incluso "= sec1 =" y "= sec2 =" líneas, y el resultado será algo como:

#=sec1=
#some-line
#some-other-line
#
#foo
#bar=baz
#
#=sec2=
c=baz

Mi pregunta es:¿Cuál es la forma más fácil de excluir las líneas de inicio y final de un rango / START /, / END / en sed?

Sé que, en muchos casos, el refinamiento de las garras "s :::" puede dar solución en este caso específico, pero busco la solución genérica aquí.

En "Sed - Una introducción y tutorial"Bruce Barnett escribe:" Más adelante le mostraré cómo restringir un comando hasta, pero sin incluir la línea que contiene el patrón especificado ", pero no pude encontrar dónde realmente muestra esto.

En el "ÚNICOS SCRIPTS DE UNA LÍNEA PARA SED"Compilado por Eric Pement, solo pude encontrar el ejemplo inclusivo:

# print section of file between two regular expressions (inclusive)
sed -n '/Iowa/,/Montana/p'             # case sensitive

Respuestas a la pregunta(5)

Su respuesta a la pregunta