Получить содержимое файла из первого экземпляра в последний экземпляр некоторой произвольной строки

Как я могу просмотреть less из первого экземпляра какой-либо произвольной строки «foo» до последнего экземпляра?

Эта произвольная строка будет в большинстве строк журнала. Я не хочу делать grep "foo" bar.log | less grep "foo" bar.log | less потому что это не относится к каждой строке.

Допустим, файл

 1 Don't care about 2 Care about (foo) 3 Care about (foo) 4 Care about 5 Care about (foo) 6 Don't care about 

Мне интересно, как получить следующее в less то,

 2 Care about (foo) 3 Care about (foo) 4 Care about 5 Care about (foo) 

grep "foo" bar.log | less grep "foo" bar.log | less не будет работать, потому что он игнорирует строку 4, и это одно, о чем я забочусь.

One Solution collect form web for “Получить содержимое файла из первого экземпляра в последний экземпляр некоторой произвольной строки”

Если у вас есть awk вы можете сделать:

 awk '/foo/{print b$0;b="";x=1;next} x{b=b$0"\n"}' bar.log | less 

Он буферизует все строки с момента последнего появления foo в переменной b .

  • Замените шаблон в файле длинной строкой
  • Извлечение строк из файла в зависимости от других строк
  • Китайские иероглифы, а не латинский, записываются в файл
  • Как добавить несколько строк в файл после шаблона, который также является многострочным?
  • Используя sed, чтобы заменить только первые два регулярных выражения с разными строками
  • Как прочитать файл свойств через мой скрипт?
  • Как извлечь данные из файла и построить имя файла из одного из значений
  • bash найти строки, начинающиеся со строки
  • Вывод процесса `find` обрабатывает определенные поля
  • Использование sed / awk для извлечения первого «токена не-whitspace» в каждой строке
  • Извлечение строк, содержащих PAT1, но не PAT2 с sed
  • Interesting Posts

    Двойная загрузка GRUB2

    Установите Kate с плагином терминала Konsole в Fedora23

    Как кэшировать главное меню KDE в памяти?

    Инструменты и стратегии для анализа устаревшего приложения на основе сценариев оболочки

    Как построить 32-битное приложение в 64-разрядной системе с помощью диспетчера пакетов Nix?

    Где находятся дисплеи, отличные от «: 0»?

    Скрипт SFTP с паролем – HP-UX

    Создание расширенного раздела

    Выполнять бит чтения. Как работают права на каталоги в Linux?

    Гибридный код в сценариях оболочки. Обмен переменными

    Как загрузить ядро ​​Linux поверх PXE с помощью dnsmasq и syslinux?

    Есть ли что-нибудь в unix crontab, чтобы определить, что это должно быть выполнено в стандартное время PST / CST?

    Цвет Vim FoldColumn отличается от Debian / Ubuntu

    Могу ли я использовать и устанавливать пакеты Ubuntu в Debian?

    Выбор строки из шаблона, замена новой строки и увеличение количества для каждого изменения

    Linux и Unix - лучшая ОС в мире.