在Windows中,我会在文件夹中搜索一个单词。类似地,我想知道特定的单词是否出现在包含许多子目录和文件的目录中。我对grep语法的搜索显示我必须指定文件名,即grep字符串文件名。
现在,我不知道文件名,我该怎么做? 一个朋友建议做grep -nr字符串,但我不知道这意味着什么,我没有得到任何结果(没有响应,直到我发出Ctrl + C)。
在Windows中,我会在文件夹中搜索一个单词。类似地,我想知道特定的单词是否出现在包含许多子目录和文件的目录中。我对grep语法的搜索显示我必须指定文件名,即grep字符串文件名。
现在,我不知道文件名,我该怎么做? 一个朋友建议做grep -nr字符串,但我不知道这意味着什么,我没有得到任何结果(没有响应,直到我发出Ctrl + C)。
当前回答
为什么不做一个递归搜索来找到子目录中的所有实例:
grep -r 'text' *
这就像一个咒语。
其他回答
为什么不做一个递归搜索来找到子目录中的所有实例:
grep -r 'text' *
这就像一个咒语。
Grep -r "yourstring" * 会发现“你的字符串”在任何文件和文件夹
现在,如果你想同时查找两个不同的字符串,你可以使用选项E并为搜索添加单词。休息之后的例子
grep -rE "yourstring|yourotherstring|$" *将搜索yourstring或yourotherstring匹配的列表位置
在目录中运行(terminal)以下命令。它还将递归地检查子目录内部。
grep -r 'your string goes here' *
grep -R "string" /directory/
当-R不跟随符号链接时,-R也跟随符号链接。
我喜欢使用的另一个选项:
find folder_name -type f -exec grep your_text {} \;
-type f只返回文件而不返回文件夹
-exec and{}在搜索中找到的文件上运行grep(准确的语法是“-exec command{}”)。