如何计算文档中的行数?

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

答案

使用wc

wc -l <filename>
$ wc -l /dir/file.txt
3272485 /dir/file.txt
$ 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

请参见 grep 手册页,以了解 - e,-i 和 - x 参数...

wc -l <file.txt>

要么

command | wc -l

有很多方法。使用wc是一种。

wc -l file

其他包括

awk 'END{print NR}' file

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

grep -c ".*" file

wc工具是 UNIX 和类似 UNIX 的操作系统中的 “字计数器”,您还可以通过添加-l选项来使用它来计算文件中的行数,因此wc -l foo将计算foo的行数。您还可以通过管道通过以下程序输出输出: ls -l | wc -l ,它将告诉您当前目录中有多少个文件。

如果要检查目录中所有文件的总行,可以使用 find 和 wc:

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
nl filename
cat myfile.txt | wc -l