Анализирую лог файл, в котором есть строки вида ERROR: ... но для корректного анализа требуется получить и команду которая привела к ошибке, которая находится в одной или более строках выше файла. Составил регулярку которая отрабатывается в редакторе как мне надо xxx.*(/n(?!xxx).*)*ERROR:.*
В логе:
xxx...
xxx...
xxx...
yyy...
ERROR...
xxx...
xxx...
отделяет только нужые мне 3 строки:
xxx...
yyy...
ERROR...
далее использую команду
grep 'xxx.*(/n(?!xxx).*)*ERROR:.*' log.txt
но проблема заключается в том что на bash уже не получается выдернуть 3 строки. Видимо потому-что я использую grep который обрабатывает одиночные строки? Есть ли альтернативное решение?.