如何搜索包含特定词语的文件?
答案1
使用命令行,您有多种选择。我最常用的 3 个是...
locate {part_of_word}
这假设您的定位数据库是最新的,但您可以使用以下命令手动更新它:
sudo updatedb
grep
就像 dr_willis 解释的那样。有一点需要注意:-R
aftergrep
也会在目录中进行搜索。例如:cd\ grep -R {something_to_look_for} {where_to_look_in}
find . -name '*{part_of_word}*' -print
.
您当前所在的目录在哪里,*
是一个通配符。
哦,你也可以将它们组合起来。例如:
locate {something}|grep {some_part_of_something}|more
如果我没记错的话:locate
是最快的(假设您的数据库是最新的)并且find
是最慢的。 并且grep
是最复杂但也是最通用的一个,因为您可以使用正则表达式。
答案2
grep -R “什么” “哪里”
例子:
grep -R hello /home
答案3
您可以使用列出包含给定内容的grep
文件:word
directory
grep -Ril word directory
这里:
*-R
递归搜索子目录中的文件。
*-i
忽略文本大小写
*-l
显示文件名而不是文件内容部分。(注意:-L
显示不包含该词的文件名)。
用于man grep
获取所有选项
答案4
grep 命令通常用于此目的。
grep 模式 文件名
grep 可以进行一些非常复杂的搜索。
willis@Cow:~$ grep --help
Usage: grep [OPTION]... PATTERN [FILE]...
Search for PATTERN in each FILE or standard input.
PATTERN is, by default, a basic regular expression (BRE).
Example: grep -i 'hello world' menu.h main.c