【问题标题】:How to count occurrences of a word in all the files of a directory? But with count incremented only once per word per file如何计算一个单词在目录的所有文件中出现的次数?但是每个文件的每个单词只增加一次计数
【发布时间】:2013-11-08 21:58:35
【问题描述】:

这个问题是对这个this question 的额外限制。我想通过避免在同一个文件中对同一个单词进行多次计数来实现字数统计?例如:如果单词“aaa”出现在“file1.txt”中 10 次,但是对于目录中的其他文件,计数应该只增加 1 而不是 10 等等。

【问题讨论】:

    标签: linux count grep find word


    【解决方案1】:

    所以你想要的是包含该单词的文件数量。简单:

    grep -l word *|wc -l
    

    【讨论】:

    • 没错!它正在工作:) 并使其区分大小写并用于精确的单词匹配(即避免嵌套匹配),它将是:grep -l "\bword\b" *|wc -l,对吗?如果我错了,请纠正我。
    • 已经区分大小写了。您的意思是不区分大小写
    • 但是如果一个目录本身既有目录又有文件,那么这个命令只会递归地应用于其中的文件而不是它的子目录,对吧?在这种情况下也有办法计算单词吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-28
    • 1970-01-01
    • 2019-04-05
    • 1970-01-01
    • 2011-06-20
    相关资源
    最近更新 更多