首页 > 解决方案 > Bash:计算一个单词在给定文件夹的所有文件中包含多少次

问题描述

我只是想计算一个单词的出现次数,而不是逐个文件地编写迭代文件。我不介意它是哪种文件。我得到的最接近的是:

COUNT=$(grep -r -n -i "theWordImSearchingFor" .)
echo $COUNT

我考虑过用空格分割它,但问题是输出不仅包含文件名和行,还包含内容(可能有大量空格)。我得到了:

./doc1.txt:29: This is the content containing theWordImSearchingFor but also other stuff  
./doc1.txt:43: This is another line containing theWordImSearchingFor 
./dir123/doc2.txt:339: .This is another...file...theWordImSearchingFor....

关于如何保持简单的任何想法?TIA

标签: bashgit-bash

解决方案


要计算特定单词的出现次数,您需要使用相同的代码布局,但更简单。有很多方法可以做到这一点,但是您在此处列出的字数统计有两个更简单的版本。两个更简单的版本,

第一种方式

第二种方式

除非软件包安装有问题,否则它们都应该工作。


推荐阅读