如何输出shell查找结果和匹配号?

时间:2012-05-03 05:35:14

标签: bash shell

我想使用find命令在文件中查找一些字符串,并希望同时查看查找结果和匹配行数。

例如,使用以下命令,我可以获得查找结果,但我不知道有多少匹配结果。

find . -name .history  | xargs grep ls

输出

ls -r
ls -R
ls

我期望输出就像这样

ls -r
ls -R
ls
total match number: 3

如何获得我期望的输出?

2 个答案:

答案 0 :(得分:2)

.... | awk '{ a+=1; print} END { print "total match number: " a}'

答案 1 :(得分:1)

没有awk的替代方案是:

| tee >(cat) >(wc -l)

为您提供输出和数字。如果你真的想要文本:

| tee >(cat) >(echo "total match number: "`wc -l`);