Как считать строки в документе? - PullRequest
925 голосов
/ 29 июня 2010

У меня есть такие строки, и я хочу знать, сколько строк у меня на самом деле ...

09:16:39 AM  all    2.00    0.00    4.00    0.00    0.00    0.00    0.00    0.00   94.00
09:16:40 AM  all    5.00    0.00    0.00    4.00    0.00    0.00    0.00    0.00   91.00
09:16:41 AM  all    0.00    0.00    4.00    0.00    0.00    0.00    0.00    0.00   96.00
09:16:42 AM  all    3.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00   96.00
09:16:43 AM  all    0.00    0.00    1.00    0.00    1.00    0.00    0.00    0.00   98.00
09:16:44 AM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
09:16:45 AM  all    2.00    0.00    6.00    0.00    0.00    0.00    0.00    0.00   92.00

Есть ли способ подсчитать их все с помощью команд linux?

Ответы [ 20 ]

5 голосов
/ 13 декабря 2013

Выше приведен предпочтительный метод, но команда «cat» также может быть полезна:

cat -n <filename>

Показывает все содержимое файла с номерами строк.

5 голосов
/ 06 марта 2015

Я видел этот вопрос, когда искал способ подсчета нескольких строк в файлах, поэтому, если вы хотите сосчитать несколько строк в файле .txt, вы можете сделать это,

cat *.txt | wc -l

это будеттакже запустить на одном файле .txt;)

4 голосов
/ 01 апреля 2014
wc -l file.txt | cut -f3 -d" "

Возвращает только количество строк

4 голосов
/ 14 июня 2016
cat file.log | wc -l | grep -oE '\d+'
  • grep -oE '\d+': чтобы вернуть цифры ТОЛЬКО .
3 голосов
/ 08 июня 2014

Перенаправление / Передача вывода файла в wc -l должно быть достаточным, как показано ниже:

cat /etc/fstab | wc -l

, который затем предоставит нет. только линий.

2 голосов
/ 17 сентября 2018

Или подсчитать все строки в подкаталогах с шаблоном имени файла (например, файлы журнала с метками времени в имени файла):

wc -l ./**/*_SuccessLog.csv
2 голосов
/ 25 апреля 2016

Я знаю, что это старый , но все же: Количество отфильтрованных строк

Мой файл выглядит так:

Number of files sent
Company 1 file: foo.pdf OK
Company 1 file: foo.csv OK
Company 1 file: foo.msg OK
Company 2 file: foo.pdf OK
Company 2 file: foo.csv OK
Company 2 file: foo.msg Error
Company 3 file: foo.pdf OK
Company 3 file: foo.csv OK
Company 3 file: foo.msg Error
Company 4 file: foo.pdf OK
Company 4 file: foo.csv OK
Company 4 file: foo.msg Error

Если я хочу узнать, сколько файлов отправлено, ОК:

grep "OK" <filename> | wc -l

OR

grep -c "OK" filename
1 голос
/ 09 марта 2019

подсчитать количество строк и сохранить результат в переменной, используя эту команду:

count=$(wc -l < file.txt) echo "Number of lines: $count"

1 голос
/ 15 ноября 2014

Я только что сделал программу для этого (с node)

npm install gimme-lines
gimme-lines verbose --exclude=node_modules,public,vendor --exclude_extensions=html

https://github.com/danschumann/gimme-lines/tree/master

0 голосов
/ 13 декабря 2013

Как уже говорили другие, wc -l - лучшее решение, но для дальнейшего использования вы можете использовать Perl:

perl -lne 'END { print $. }'

$. содержит номер строки и блок END будет выполнен в конце скрипта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...