1.事例文件
$ tree
.
├── cnt1.c
├── cnt1.h
├── cnt2.c
├── cnt3.c
└── sub
├── cnt4.c
├── cnt5.c
└── cnt6.py
2.基于find
和wc
的方式
# print 方式
$ find . "(" -name "*.c" -or -name "*.h" ")" -print | xargs wc -l
0 ./cnt1.h
11 ./cnt2.c
11 ./sub/cnt4.c
11 ./sub/cnt5.c
11 ./cnt3.c
11 ./cnt1.c
55 total
# cat 方式
$ find -name "*.c" -o -name "*.h" |xargs cat|wc -l
533706
3.基于cloc
方式
$ cloc ./
7 text files. 2 unique files. 5 files ignored.github.com/AlDanial/cloc v 1.82 T=0.01 s (357.2 files/s, 2321.8 lines/s)-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Python 1 1 3 8
C/C++ Header 1 0 0 1
-------------------------------------------------------------------------------
SUM: 2 1 3 9
-------------------------------------------------------------------------------
cloc
似乎可以过滤重复文件,有时间单独学一下使用方法