如何在终端中查找带有特定文本的文件

Svi*_*ish 213 mac unix search terminal macos

我想查找包含特定文本字符串的所有文件。你会如何在终端中做到这一点?

Ign*_*ams 358

grep -r 'text goes here' path_goes_here
Run Code Online (Sandbox Code Playgroud)

  • 明白了:`grep -lr "文本模式" ./ -s` ; `grep -lr "文本模式" [父路径] -s` (11认同)
  • 如何隐藏“权限被拒绝”结果? (2认同)

小智 35

使用聚光灯

mdfind "text goes here"
mdfind -onlyin /home/user/Desktop -live "live update"
Run Code Online (Sandbox Code Playgroud)

不要忘记看:

man mdfind
Run Code Online (Sandbox Code Playgroud)

  • 这是否适用于聚光灯未索引的文件(即隐藏文件夹中的文件、系统配置文件等)? (2认同)

小智 19

  1. 通过确认
brew install ack 
ack "text goes here"
Run Code Online (Sandbox Code Playgroud)
  1. 通过查找
find . |grep "text goes here"
Run Code Online (Sandbox Code Playgroud)
  1. 通过grep
grep -RnslI "text goes here"
Run Code Online (Sandbox Code Playgroud)


小智 5

您可以根据自己的口味和需求选择以下之一。假设您需要在当前目录中递归搜索包含文本的文件 - “async”,您可以通过以下方式之一进行搜索:

使用 grep 在此处输入图片说明

使用确认 在此处输入图片说明