Sed para excluir um intervalo de linhas de uma linha de correspondência específica ATÉ uma linha de correspondência específica (não incluindo a última linha)

Li o fórum em busca de pistas sobre como resolver meu problema, mas nenhum dos tópicos relacionados é útil para mim, com conhecimento limitado de programação, para aplicar ao meu problema específico.

Meu problema é este: eu preciso me livrar das linhas de lixo agrupadas em todo o meu arquivo, mas que estão entre os clusters de linhas utilizáveis. Pesquisei o manual do sed e outras fontes informativas sobre a exclusão de intervalos que correspondam aos padrões, mas eles mencionam apenas a exclusão do padrão de correspondência ATÉ, e NÃO at

gora, eu gostaria de especificar um intervalo para o qual o sed exclui linhas, começando da primeira linha que corresponde à linha do padrão até a linha que corresponde ao outro padrão. Além disso, o sed precisa reconhecer os padrões que existem no final das linha

Por exemplo

line 1
blah blah 1
blah blah 2
blah blah 3
blah blah 4
line 2
line 3

Result precisa ser:

line 1
blah blah 1
line 2
line 3

Observe as várias linhas entre a linha e a linha 2. Enquanto o blá blá 1 precisa permanecer, os outros 3 precisam ser excluído

Obrigado

questionAnswers(6)

yourAnswerToTheQuestion