You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Cloc仅统计包含指定文本的文件?

实现cloc仅统计包含特定短语的文件

要实现这个需求,cloc本身没有直接的“仅包含内容”参数,但可以通过以下两种方法达成目标:

  • 方法一:用--exclude-content反向排除
    通过排除完全不包含目标短语的文件,剩下的就是需要统计的文件。修正你之前的正则写法,正确命令如下:

    cloc . --exclude-content='(?s)^((?!import).)*$'
    

    解释:

    • (?s) 是Perl正则的单行模式修饰符,让.可以匹配换行符(确保能检查整个文件内容);
    • ^((?!import).)*$ 表示整个文件内容中不存在“import”字符串,cloc会排除这类文件,最终只统计包含目标短语的文件。
  • 方法二:先用grep筛选文件再传给cloc
    如果对正则不太熟悉,这种方法更直观:先用grep递归找出所有包含目标短语的文件,再将文件列表传给cloc统计,命令如下:

    cloc $(grep -rl "import" .)
    

    解释:

    • grep -rl 会递归搜索当前目录,输出所有包含“import”字符串的文件路径;
    • $() 将grep的输出作为参数传给cloc,让cloc只统计这些筛选后的文件。

内容的提问来源于stack exchange,提问作者Richard Witherspoon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 00:13:21