правда.
Start_pattern
abc
d End_pattern
Start_pattern
abc
d
ef
ghij
klm
no End_pattern
Start_pattern
abc
def
hij End_pattern
Start_pattern
abc
dhi
jklm End_pattern
мый результат:
Для печати строк междуStart_pattern
в том числеSearch_pattern
End_pattern
Начальный и конечный шаблон включительно.
Start_pattern
abc
d
ef
ghij
klm
no End_pattern
Start_pattern
abc
def
hij End_pattern
В приведенном выше файле я хочу найти"ef"
и печатать строки между"Strat_pattern"
а также"End_pattern"
.
grep -B[NUM] and -A[NUM]
которые бесполезны, поскольку между шаблоном поиска "gef" и "Start_pattern" и "End_pattern" может быть неизвестное количество строк.grep
, sed
, awk
все приветствуется. предпочтительно один лайнер.sed -n '/BEGIN/,/END/p' *
работает для печати строк междуSearch_pattern
который"def"
а такжеEnd_pattern
, но я не могу печатать строки междуStart_pattern
а также"def"
Несколько файлов присутствуют с несколькими вхождениями search_pattern