我正在尝试创建一个for循环,该循环单独计算目录中每个文件中关键字的数量。
例如,如果一个目录有2个文件,我希望for循环表示
foo.txt = found 4 keywords
bar.txt = found 3 keywords
到目前为止,我已经写了以下内容,但是它给出了所有文件的关键字总数,而不是每个单独的文件。
我得到的结果是
7 keywords founds
而不是上面期望的输出
这是我想出的
for i in *; do egrep 'The version is out of date|Fixed in|Identified the following' /path/to/directory* | wc -l ; done
答案 0 :(得分:1)
只需使用grep的-c
计数选项:
grep -c <pattern> /path/to/directory/*
您会得到类似的东西:
bar.txt:2
foo.txt:1
请注意,这将计算匹配的行,而不是匹配的单个模式。因此,如果某个模式在一行中出现两次,则只会计数一次。