Pregunta ¿Cómo contar líneas en un documento?


Tengo líneas como estas, y quiero saber cuántas líneas tengo en realidad ...

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

¿Hay alguna manera de contarlos a todos usando comandos de Linux?


746
2018-06-29 00:31


origen


Respuestas:


Utilizar wc:

wc -l <filename>

Esto generará la cantidad de líneas en <filename>:

$ wc -l /dir/file.txt
3272485 /dir/file.txt

O, para omitir el <filename> del resultado de uso wc -l < <filename>:

$ wc -l < /dir/file.txt
3272485

También puede canalizar datos a wc también:

$ cat /dir/file.txt | wc -l
3272485
$ curl yahoo.com --silent | wc -l
63

1398
2018-06-29 00:33



Para contar todas las líneas, use:

$ wc -l file

Para filtrar y contar solo las líneas con uso de patrones:

$ grep -w "pattern" -c file  

O usa -v para invertir la coincidencia:

$ grep -w "pattern" -c -v file 

Consulte la página de manual de grep para ver los argumentos -e, -i y -x ...


113
2018-06-29 00:42



wc -l <file.txt>

O

command | wc -l

61
2018-06-29 00:33



hay muchas maneras. utilizando wc es uno.

wc -l file

otros incluyen

awk 'END{print NR}' file

sed -n '$=' file (GNU sed)

grep -c ".*" file

39
2018-06-29 03:15



La herramienta wc es el "contador de palabras" en sistemas operativos UNIX y UNIX, también puede usarlo para contar líneas en un archivo, agregando el -l opción, entonces wc -l foo contará el número de líneas en foo. También puede canalizar la salida de un programa como este: ls -l | wc -l, que le dirá cuántos archivos hay en el directorio actual.


23
2018-04-01 13:37



Utilizar wc:

wc -l <filename>

20
2018-06-29 00:34



Si desea verificar la línea total de todos los archivos en un directorio, puede usar find y wc:

find . -type f -exec wc -l {} +

16
2018-01-19 01:16



Si lo único que quieres es el número de líneas (y no el número de líneas y el estúpido nombre de archivo que está volviendo):

wc -l < /filepath/filename.ext

Como se mencionó anteriormente, estos también funcionan (pero son inferiores por otras razones):

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

12
2017-11-15 19:02