Как исключить несколько строк вокруг совпадения с помощью grep или аналогичного инструмента? - PullRequest
2 голосов
/ 25 февраля 2012

Я могу найти все несопоставленные строки файла с grep -v 'my_pattern' some_file.Также я могу напечатать несколько строк до / после / около совпадения с опциями -A, -B или -C grep.Но я не могу объединить эти два параметра, чтобы исключить строки с рисунком и определенное количество строк рядом с совпадающими линиями - grep показывает весь файл как результат.Например, у меня есть журнал с большим количеством шаблонов, таких как:

25.02.2012 10:41:37 here goes memory state
25MiB free
16MiB allocated
max free block is 4MiB

Я бы хотел их отфильтровать.Конечно, я могу написать собственный скрипт на perl / awk, но есть ли более элегантный способ сделать это?

1 Ответ

0 голосов
/ 25 февраля 2012

Вы можете использовать текстовый редактор vim:

:g/my_pattern/-2,//+2d
...