linux命令-统计命令执行后的行数或者统计目录下文件数目

管理员
管理员 2023-2-17

linux下如何统计一个目录下的文件个数以及代码总行数的命令

知道指定后缀名的文件总个数命令: 
find . -name "*.cpp" | wc -l 
知道一个目录下代码总行数以及单个文件行数: 
find . -name "*.h" | xargs wc -l 
find . -name "*.c" | xargs grep '^.' | wc -l    //不包括空白行
wc   -l   ` find  .  -name   "*.c " `  //注意find内容被~下面的那个符号包着


wc命令其他说明


常见参数如下:

-c 统计字节数。

-l 统计行数。

-m 统计字符数。这个标志不能与 -c 标志一起使用。

-w 统计字数。注意,这里的字指的是由空格,换行符等分隔的字符串。


最常用的还是-l参数,它用来统计文件或标准输出有多少行,实际上就可以用来做很多统计的事情了。


统计文件行数,词数和字节数

$ wc test.txt

1 1 7 test.txt


打印结果表明该文件有1行,1个词,7字节。


要特别提醒的是,这里的词是以空格,换行符等分隔开的字符串,也就是说

举个例子:


编程

编程,在这里是两个字符,而占用空间是6字节,但是使用wc -m统计会比两个多一个,是3个字符。


$ echo 编程|wc -m

3

$ echo 编程|wc -c

7


仅统计文件行数,词数,字符数或字节数

仅统计单项内容时,仅需要带上对应的参数即可,例如:


$ wc -l test.txt

1 test.txt


使用-l参数,使得只显示行数。


但是这里特别要注意的是字符数和字节数的区别。字节数是数据占用的空间大小,而一个字符可能占多个字节,例如,UTF-8编码中,一个英文字母就是一个字符,占用空间一个字节,而一个中文,则占用3字节大小。


回帖
  • 消灭零回复

微信二维码

微信二维码

微信扫码添加微信好友