grep в текстовом файле все строки, содержащие 'xxx' и предыдущую строку

Я хочу напечатать все строки в журнале tomcat catalina.out, содержащем xxx. Простая вещь для выполнения с помощью:

cat catalina.out | grep xxx

Тем не мение. В лог-файле я получаю строки, содержащие xxx, строка над этой строкой содержит дату и время, когда элемент был зарегистрирован. Я бы тоже хотел видеть эти строки над жирными линиями. Как я мог сделать это?

1 ответ

Решение

grep -B1

-B[n] позволяет тебе увидеть [n] линии перед шаблоном, который вы ищете.

Вы также можете использовать -A для "строк после" и -C для "контекста" (строки выше и ниже).

Вы также можете упростить вызов grep и удалить канал с помощью grep xxx -B1 catalina.out,

Другие вопросы по тегам