我已经可以计算目录中所有文件中的字符串数量:
grep -roh „XXX" . | wc –w
但我不知道如何隔离该语句。我只想统计文件名中包含以下字符串“2015-09-25”的文件中的单词。
有人能帮我吗?
答案1
这应该可以工作,它用于find
隔离您感兴趣的文件,然后仅在这些文件上运行 grep:
find /mydir -maxdepth 1 -type f -name "*2015-09-25*" -execdir grep -roh "XXX" "{}" \+ | wc -w
如果你还想在 /mydir 的子目录中查找文件,只需删除-maxdepth 1
答案2
如果所有文件都在当前目录中,尝试
grep -oh "XXX" *2015-09-25*
否则尝试
grep -roh -c --include="*2015-09-25*" "XXX"
在哪里
-r
告诉 grep 进行递归--include="*2015-09-25*"
根据文件的基本名称进行过滤。