Извлечь определенный раздел

У меня несколько разделов, каждая из которых состоит из нескольких строк. например:

#--- Section 1 --- Start Lookup.mdc|123|xyz| String End #--- Section 2 --- Start Lookup.mdc|123|xyz| Integer End 

Мое требование: мне нужно извлечь только тот раздел, который содержит Integer (Datatype search) в нем.

Ожидаемый результат:

 Start Lookup.mdc|123|xyz| Integer End 

One Solution collect form web for “Извлечь определенный раздел”

 awk 'BEGIN {RS="^--- Section [0-9]+"} /Integer/ {print}' 

и либо подключите вход к нему, либо добавьте имя файла в конец.

Вам не нужно {print} , так как это действие по умолчанию, но я добавил его, чтобы сделать его более понятным.

BEGIN выполняется перед обработкой ввода и устанавливает волшебную переменную RS (Record Separator) в соответствии с линией, которая разделяет записи.

/Integer/ сопоставляет записи, содержащие Integer.

  • удалить с начала файла до n-го вхождения шаблона
  • скопировать заголовок в каждую ячейку своей строки
  • Как удалить строку между двумя строками?
  • поля фильтра в файле, без постоянного формата записи
  • Комментируйте (автоматически) исходный файл LaTeX, чтобы сделать его более читаемым
  • Заверните линии до указанного количества полей
  • Замена текста в определенной позиции из другого файла
  • Количество строк в соответствии с их содержанием
  • Поиск последнего символа файла и добавление строки после этого?
  • конвертировать шестнадцатеричные в двоичные
  • Добавить числа в поле в файле
  • Как я могу рассчитывать строки с ключевыми словами определенной длины?
  • Linux и Unix - лучшая ОС в мире.