我使用这个shell脚本来计算django项目中的代码行,
find . -name "*.py" -type f -exec grep . {} \; | wc -l
如何修改它以不计入迁移脚本。
本质上,这意味着不计入任何名称为migrations
的子文件夹中的任何内容
有人可以帮我吗?
答案 0 :(得分:1)
鉴于您要排除名为migrations
的目录中的所有文件,可以向find
命令添加条件:
find . -name "*.py" -type f ! -path '*/migrations/*' -exec grep . {} \; | wc -l
请注意,使用cloc
[GitHub]来计数行数可能更容易:
cloc --not-match-d=migrations .
然后将生成摘要,例如:
$ cloc --not-match-d='migrations' .
102 text files.
86 unique files.
38 files ignored.
github.com/AlDanial/cloc v 1.74 T=0.88 s (97.3 files/s, 42411.8 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
XML 2 11 32 33299
Python 63 619 273 2673
HTML 18 35 49 304
JavaScript 2 8 5 100
CSS 1 5 6 81
-------------------------------------------------------------------------------
SUM: 86 678 365 36457
-------------------------------------------------------------------------------