1

Я ищу grep-подобную команду, которая выводит полные записи вместо фиксированного количества строк контекста.

Например:

grep -d record_delimiter PATTERN [FILE]

Логика:

  • разбить ФАЙЛ в записях в соответствии с record_delimiter.
  • Если совпадение найдено, выведите всю запись и перейдите к следующей.

2 ответа2

1

Используйте awk и измените разделитель записей RS следующим образом:

awk -v RS = '/PATTERN/ {print $ 0 "\n"}' [FILE]

0

Вы также можете проверить Recutils, который предлагает довольно надежные, похожие на базу данных опции для запросов и манипулирования файлами записей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .