如何在没有搜索猴子的情况下,像在Windows中那样搜索文件中的字符串?

我在VMWare上使用Ubuntu,但由于安全限制,无法连接到互联网。
我想知道是否有一种通过终端搜索字符串并找到该字符串所在行的方法。

1你是在说grep还是更高级的东西? - muru
你先搜索了吗? - xxbinxx
3个回答

几乎有太多的选择无法一一列举。
grep -r 'pattern_to_match' directory_to_search

将输出与模式匹配的文件名和完整行。

我使用的最好方法是grep命令,带有选项-ri(递归和不区分大小写搜索):

$ grep -r <text_pattern_to_search> directory_or_path_to_search

以下是可能对您有用的选项:
    -i - case insensitive
    -r, --recursive  like --directories=recurse
    -R, --dereference-recursive  likewise, but follow all symlinks
      --include=FILE_PATTERN  search only files that match FILE_PATTERN
      --exclude=FILE_PATTERN  skip files and directories matching FILE_PATTERN
      --exclude-from=FILE   skip files matching any file pattern from FILE
      --exclude-dir=PATTERN  directories that match PATTERN will be skipped.

要获取更详细的信息,你可以在 Linux 终端中使用 grep --helpman grep 命令。

祝好!

如果你只想找到字符串在文件中出现的行号,请使用以下方法:
grep -n '/string_To_Find/=' directory/file_Name

如果您想查找行号并输出字符串所在行的完整行名称,请使用以下内容:
grep -n 'string_To_Find' directory/file_Name

如果你只想找到包含该字符串的完整行名称,请使用以下方法:
grep -r 'string_To_Find' directory/file_Name