У меня есть такие линии, и я хочу знать, сколько линий у меня на самом деле...
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?
Используйте wc
:
wc -l <filename>
Это выведет количество строк в файле <filename>
:
$ wc -l /dir/file.txt
3272485 /dir/file.txt
Или, чтобы опустить <filename>
из результата, используйте wc -l < <filename>
:
$ wc -l < /dir/file.txt
3272485
Вы также можете передавать данные в wc
:
$ cat /dir/file.txt | wc -l
3272485
$ curl yahoo.com --silent | wc -l
63
Для подсчета всех строк использовать:
$ wc -l file
Для фильтрации и рассчитывать только строки с использованием образец:
$ grep -w "pattern" -c file
Или используйте -V, чтобы инвертировать матч:
$ grep -w "pattern" -c -v file
Смотрите страницу грэп человек, чтобы посмотреть на -е,-я и -Х аргументов...
есть много способов. используя туалет
- это одно.
туалет -л файл
другие включают в себя
`на awk 'Конец{печати НР}' файл
`СЭД -Н '$=' файл (дистрибутив GNU СЕПГ)
grep -c ".*" file
Инструмент туалет
- это на "счетчик слов" в Unix и Unix-подобных операционных систем, вы можете также использовать его для подсчета строк в файле, путем добавления -л
вариант, так что туалет -л фубудет подсчитать количество строк в
фу. Вы можете также трубы выход из программы такой:
ЛС-л | туалет -л`, который скажет вам, сколько файлов в текущем каталоге.
Если вы хотите проверить общее соответствие всех файлов в каталоге ,вы можете использовать поиск и туалетом:
find . -type f -exec wc -l {} +
Используйте wc
:
wc -l <filename>
Если все вы хотите, является число строк (а не количества линий и глупое имя файла возвращается):
wc -l < /filepath/filename.ext
Как уже упоминалось ранее эти же работы (но уступают по другим причинам):
awk 'END{print NR}' file # not on all unixes
sed -n '$=' file # (GNU sed) also not on all unixes
grep -c ".*" file # overkill and probably also slower
Я'вэ прошли через это:
cat myfile.txt | wc -l
Я предпочитаю это более принято отвечать, потому что это не печать имени файла, и вы не'т придется использовать на awk` исправить. Принято отвечать:
туалет -л myfile.txt`
Но я думаю, что лучше один GGB667'ы ответа:
туалет -л < myfile.txt`
Я, вероятно, будет использовать, что отныне. Это'ы немного короче, чем мой способ. Я ставлю мой старый способ делать это в случае, если кто-то предпочитает. Выход такой же, с этими двумя методами.
Я видел этот вопрос, пока я ищу способ, чтобы подсчитать несколько строк, файлов, так что если вы хотите считать файл несколько строк .txt файл вы можете сделать это,
cat *.txt | wc -l
он также будет работать на одном .txt файл ;)
wc -l file.txt | cut -f3 -d" "
Возвращает только количество строк
Я знаю, что это старый, но все же: количество отфильтрованных строк
Мой файл выглядит так:
в
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
Или
grep -c "OK" filename
подсчитать количество строк и результат хранить в переменной, используйте эту команду:
граф=$(туалет, умывальник -л < file.txt) количество строк: $рассчитывать на" Эхо ";
Как другие заявили, что туалет -для меня это лучшее решение, но на будущее вы можете использовать Perl:
perl -lne 'END { print $. }'
$.
содержит номер строки и End
блок будет выполняться в конце сценария.
Я просто сделал программу для этого ( с узел
)
npm install gimme-lines
gimme-lines verbose --exclude=node_modules,public,vendor --exclude_extensions=html