2012-05-03 48 views
2

我想使用find命令在文件中查找一些字符串,並希望同時查看查找結果和匹配行數。如何輸出shell查找結果和匹配號碼?

例如,使用下面的命令,我可以得到查找結果,但我不知道我得到了多少匹配結果。

find . -name .history | xargs grep ls 

輸出

ls -r 
ls -R 
ls 

我所期望的輸出是這樣

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

我怎樣才能得到我期望的輸出?

回答

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

爲什麼不使用NR? ... | 'awk'{print} END {print「總匹配號碼:」NR}「' – dpp

+0

當然,這也可以。 –

1

另一種不AWK是:

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

爲了讓你的輸出和數量。如果你真的想要的文字也:

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