如何在Unix中查找不同文件中特定单词的计数

时间:2015-03-16 05:22:54

标签: unix grep

如何在Unix中查找不同文件中特定单词的计数:

我有:目录中的50个文件(abc.txt,abc.txt.1,abc.txt.2等)

我想要什么:查找每个文件中“Hello”字样的实例数。

我使用的是 grep -c Hello abc* | grep -v :0

它给了我Form of,

的结果
<<File name>>   : <<count>>

我希望输出采用

格式
<<Date>>    <<File_Name>>   <<Number of Instances of word Hello in the file>>

1-1-2001     abc.txt              23
1-1-2014     abc.txt.19           57
2-5-2015     abc.txt.49           16

2 个答案:

答案 0 :(得分:0)

您可以使用gnu awk >=4.0(由于ENDFILE)来获取号码 如果我们知道数据的来源,我会添加它。

awk '{for (i=1;i<=NF;i++) if ($i~/Hello/) a++} ENDFILE {print FILENAME,a;a=0}' abc.txt*

答案 1 :(得分:0)

### Sample code for you to tweak for your needs:
touch test.txt
echo "ravi chandran marappan 30" > test.txt                                                                                                                                     
echo "ramesh kumar marappan 24" >> test.txt
echo "ram lakshman marappan 22" >> test.txt
sed -e 's/ /\n/g' test.txt | sort | uniq | awk '{print "echo """,$1,
"""`grep -wc ",$1," test.txt`"}' | sh

Results:                          
22 -1                                                                                                                                                         
24 -1                                                                                                                                                         
30 -1                                                                                                                                                         
chandran -1                                                                                                                                                   
kumar -1                                                                                                                                                      
lakshman -1                                                                                                                                                   
marappan -3                                                                                                                         
ram -1                                                                                                                            
ramesh -1                                                                                                                       
ravi -1`