如何仅为特定文件grep当前目录

时间:2017-03-22 19:26:19

标签: bash grep

你好我有一个问题我想在没有递归的目录中找到一个关键字。我想只检查.c扩展名。 例如,我试试;

grep -r 'keyword' --include=*.c .

它有效。但我不想要递归搜索我只想要当前目录的结果,所以我删除了-r

grep 'keyword' --include=*.c .

然而,这给了我一个错误,“。是一个目录”。实际上我有一个想法,将递归grep的内容写入文本文件,并为文件扩展名grep该文本文件,但我认为它根本不会有效。感谢您的支持。

3 个答案:

答案 0 :(得分:4)

我建议:

grep 'keyword' *.c

答案 1 :(得分:1)

另一个答案是干净而有效 但我觉得你坚持使用" -r"和/或" - 包括",可能是出于未提及的原因。

bash-3.1$ grep -r --include="*.c" -dskip 'keyword' ./*

答案 2 :(得分:1)

更接近原始语法,您可以使用:

grep --include=*.c 'keyword' *

报告目录而不搜索它们。