Как я могу подсчитать количество строк в файле после соответствия grep?

Я пытаюсь подсчитать количество строк после проблемной строки в файле csv. Я знаю, что могу использовать синтаксис grep -a # для вывода числа строк после того, как совпадение найдено. Меня интересует только количество строк. Я понимаю, что могу установить номер в MAX_INT, передать его в файл и выполнить некоторую обработку.

Я ищу краткий лайнер, чтобы просто рассказать мне счет.

Какие-либо предложения?

5 Solutions collect form web for “Как я могу подсчитать количество строк в файле после соответствия grep?”

 { grep -m1 match; grep -c ''; } <file 

Это будет работать с GNU grep и lseek() способным проникнуть. Первый grep остановится с шагом 1 м, а второй будет -c каждую строку, оставшуюся на входе.

Без GNU grep :

 { sed '/match/q'; grep -c ''; } <file 

Конечно, w / grep вы можете использовать любые / все другие варианты, кроме того, и остановка в одном матче вовсе не нужна.

Вот один из способов.

 $ cat foo aaa bbb ccc ddd eee fff $ awk '/^ddd/{a=FNR}END{print FNR-a}' foo 2 $ 

Другой способ – использование dc немного эзотерическое, но, похоже, здесь хорошо работает:

 sed -n '/problem/=;$=' prob.txt | dc -e '??rp' 

sed ищет prob.txt для «проблемы» и последней строки и использует команду = для вывода номера строки для обоих.

dc считывает эти два значения в стек, отменяет их, отбрасывает и печатает разницу.

Полностью с sed (хотя и две команды с трубой)

 sed '/ddd/,$!d' file | sed -n '$=' 

Удаляет всю строку перед строкой, а затем следующая команда подсчитывает строки в новом файле.

Это должно удалить все строки до (и в том числе) проблемных, а затем подсчитать оставшиеся строки:

 sed '1,/problem/d' data.txt | wc -l 
  • Получить команды, которые пользователь может запустить из / etc / sudoers?
  • Как выбрать количество цифр в переменной в моих сценариях?
  • Как использовать grep в столбце?
  • Как я рекурсивно ретранслировать через .gz-файлы?
  • имена файлов grep, имена файлов и содержимое сразу?
  • Как grep для нескольких шаблонов на нескольких строках?
  • Как определить файлы формата dos в git bash
  • Что значит \? среднее значение в регулярном выражении?
  • жадные и ленивые регулярные выражения (вопрос понимания)
  • Могу ли я запустить grep из cPanel без SSH?
  • Удалить все строки текста, которые не являются всеми числами
  • Как выбрать определенные наборы или вытеснить из файла, если struture содержит определенную строку?
  • Interesting Posts

    Linux эффективная команда, чтобы найти, если 32 бит / 64 бит

    Использование команды sed для соответствия текста в определенном блоке текста

    Переключить сенсорные кнопки независимо от сенсорной панели

    Как установить системные шрифты как noto?

    / proc / self / maps – 3-й отображаемый фрагмент файла?

    Почему пакеты отвергаются даже через правило, которое принимает их все перед рукой?

    Поиск темы для рыбы с помощью powerline, полного пути и возврата и возврата каретки после строки подсказки

    найти все команды с помощью wh, найти по ключевому слову на странице man

    Больше не может загружаться после обновления Arch

    Как контролировать напряжение процессора для Dell XPS15 9550 (Skylake i5-6300HQ) под Linux

    Ядро 3.3.2-6.fc16.x86_64 широкополосное беспроводное соединение не появляется

    Как найти время изменения / доступа / изменения файла или каталога?

    Ошибка захвата LS в файл

    Как установить аппаратные зависимости в .deb-пакеты?

    Последовательная поддержка Grub и usb

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