Linux. Как подсчитать количество строк содержащих заданную последовательность символов в заданном файле

Linux. Как подсчитать количество строк содержащих заданную последовательность символов в заданном файле

26.05.2016 12:41:29 Просмотров 24 Источник

Как подсчитать количество строк содержащих заданную последовательность символов в заданном файле. Допустим есть файл в домашнем каталоге info.txt он содержит такие строки:

  • linux good
  • linux good
  • linux best
  • linux cool

Как узнать количество строк. Где встречается слово good ?

У вопроса есть решение - Посмотреть?

Ответы - Linux. Как подсчитать количество строк содержащих заданную последовательность символов в заданном файле / Linux. Как подсчитать количество строк содержащих заданную последовательность символов в заданном файле

Является ответом!
Mike

26.05.2016 12:54:58

Находим с помощью grep нужные строки и считаем их с помощью wc:

grep good info.txt | wc -l
https://ru.stackoverflow.com/questions/527667/linux-%d0%9a%d0%b0%d0%ba-%d0%bf%d0%be%d0%b4%d1%81%d1%87%d0%b8%d1%82%d0%b0%d1%82%d1%8c-%d0%ba%d0%be%d0%bb%d0%b8%d1%87%d0%b5%d1%81%d1%82%d0%b2%d0%be-%d1%81%d1%82%d1%80%d0%be%d0%ba-%d1%81%d0%be%d0%b4%d0%b5%d1%80%d0%b6%d0%b0%d1%89%d0%b8%d1%85-%d0%b7%d0%b0%d0%b4%d0%b0%d0%bd%d0%bd%d1%83%d1%8e-%d0%bf%d0%be%d1%81%d0%bb%d0%b5%d0%b4%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8c%d0%bd%d0%be%d1%81%d1%82%d1%8c-%d1%81%d0%b8/527674#comment655813_527674
Не первый год использую linux на домашнем ПК, но до сих пор не привык к тому, насколько просто решаются весьма специфические задачи.
https://ru.stackoverflow.com/questions/527667/linux-%d0%9a%d0%b0%d0%ba-%d0%bf%d0%be%d0%b4%d1%81%d1%87%d0%b8%d1%82%d0%b0%d1%82%d1%8c-%d0%ba%d0%be%d0%bb%d0%b8%d1%87%d0%b5%d1%81%d1%82%d0%b2%d0%be-%d1%81%d1%82%d1%80%d0%be%d0%ba-%d1%81%d0%be%d0%b4%d0%b5%d1%80%d0%b6%d0%b0%d1%89%d0%b8%d1%85-%d0%b7%d0%b0%d0%b4%d0%b0%d0%bd%d0%bd%d1%83%d1%8e-%d0%bf%d0%be%d1%81%d0%bb%d0%b5%d0%b4%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8c%d0%bd%d0%be%d1%81%d1%82%d1%8c-%d1%81%d0%b8/527674#comment655832_527674
@jumpjet67: grep -c -w good info.txt
https://ru.stackoverflow.com/questions/527667/linux-%d0%9a%d0%b0%d0%ba-%d0%bf%d0%be%d0%b4%d1%81%d1%87%d0%b8%d1%82%d0%b0%d1%82%d1%8c-%d0%ba%d0%be%d0%bb%d0%b8%d1%87%d0%b5%d1%81%d1%82%d0%b2%d0%be-%d1%81%d1%82%d1%80%d0%be%d0%ba-%d1%81%d0%be%d0%b4%d0%b5%d1%80%d0%b6%d0%b0%d1%89%d0%b8%d1%85-%d0%b7%d0%b0%d0%b4%d0%b0%d0%bd%d0%bd%d1%83%d1%8e-%d0%bf%d0%be%d1%81%d0%bb%d0%b5%d0%b4%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8c%d0%bd%d0%be%d1%81%d1%82%d1%8c-%d1%81%d0%b8/527674#comment655852_527674
@jfs уже слегка не UNIX-way - "программа решает только одну задачу, но делает это максимально эффективно.", хотя я не сторонник крайностей.
https://ru.stackoverflow.com/questions/527667/linux-%d0%9a%d0%b0%d0%ba-%d0%bf%d0%be%d0%b4%d1%81%d1%87%d0%b8%d1%82%d0%b0%d1%82%d1%8c-%d0%ba%d0%be%d0%bb%d0%b8%d1%87%d0%b5%d1%81%d1%82%d0%b2%d0%be-%d1%81%d1%82%d1%80%d0%be%d0%ba-%d1%81%d0%be%d0%b4%d0%b5%d1%80%d0%b6%d0%b0%d1%89%d0%b8%d1%85-%d0%b7%d0%b0%d0%b4%d0%b0%d0%bd%d0%bd%d1%83%d1%8e-%d0%bf%d0%be%d1%81%d0%bb%d0%b5%d0%b4%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8c%d0%bd%d0%be%d1%81%d1%82%d1%8c-%d1%81%d0%b8/527674#comment656427_527674
@jumpjet67 -w находит только целые слова (естественная часть grep, которую wc -l не реализует). Устоявшуюся функциональность полезно в программу включать, чтобы не реализовывать с нуля каждый раз, например это позволяет статус возврата установить, если -c ноль возвращает. Если редко приходится использовать -c, то конечно хорошо знать о wc -l так как её и с другими командами можно использовать. Другой пример: sort -u и uniq.
Закрыть X