Почему я получаю этот результат от сортировки?

Если вы хотите печатать с первого появления шаблона, это легко сделать. Следуйте той же логике, которую я описал в другом ответе , но с некоторой дополнительной логикой:

parse.sed

/^dove$/ {            # Match multi-line pattern
  N                   #  /
  N                   # /
  /\nbird\nbunny$/bb  # When matched jump to label b
}
d                     # Restart with next line if no match
:b                    # \
n                     #  Print the rest of the file
bb                    # /

Запустите это так:

sed -f parse.sed infile

Или как переносной -вкладыш:

sed -n -e '/^dove$/{N;N;/\nbird\nbunny$/bb' -e '};d;:b' -e 'p;n;bb' infile

Выход в обоих случаях:

dove
bird
bunny
gnu
hen
dove
bird
buffalo

0
12.06.2018, 03:09
0 ответов

Теги

Похожие вопросы