Com awk
, facilmente extensível a qualquer registro th :
awk '/start/ && ++n == 2, /end/' < file
imprimia as linhas da segunda ocorrência de start
para a primeira ocorrência de end
depois disso.
Para imprimir o segundo registro start
to end
(faria diferença se houvesse start
, start
, end
sequencias):
awk '
/start/, /end/ {
if (!seen) {seen = 1; n++}
if (n == 2) print
if (/end/) seen = 0
}' < file
Ou:
awk '
!inside && /start/ {inside = 1; n++}
!inside {next}
n == 2
/end/ {inside = 0}' < file