统计代码行数指令如何忽略json文件?git log --author="sthe" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "增加的行数: %s\n删除的行数: %s\n总行数: %s\n", add, subs, loc }'
要统计代码行数并忽略特定类型的文件(例如 JSON 文件),你可以在 git log
命令中使用 grep
来过滤掉这些文件。以下是一个示例命令,展示了如何忽略 JSON 文件:
git log --author="sthe" --pretty=tformat: --numstat | grep -v '\.json' | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "增加的行数: %s\n删除的行数: %s\n总行数: %s\n", add, subs, loc }'
解释:
git log --author="sthe" --pretty=tformat: --numstat
:获取指定作者的提交记录,并以 numstat 格式显示每个文件的增加和删除行数。grep -v '\.json'
:过滤掉包含 .json
的行,即忽略 JSON 文件的变更记录。awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "增加的行数: %s\n删除的行数: %s\n总行数: %s\n", add, subs, loc }'
:使用 awk
计算增加、删除和总行数。这样,你就可以统计代码行数,同时忽略 JSON 文件的变更。