如何使用命令&#34找到包含目录中特定字符串的文件;找到"?

时间:2016-03-24 03:57:42

标签: linux macos bash unix find

这是我的目录结构。

dirOut
├── dirIn1
│   ├── temp1
│   └── temp2
├── dirIn2
└── dirIn3
    ├── temp1
    ├── temp2
    ├── temp3
    └── temp4

dir是目录,temp是文件 我想找到包含特定字符串的文件" Hello"。
我如何使用命令" find"找到。

3 个答案:

答案 0 :(得分:3)

根据内容找到文件时,请使用grep,而不是find

grep -lr Hello .
  • -l:通常grep打印匹配行,-l选项,只打印匹配的文件名。
  • -r:递归查找目录下的文件。

答案 1 :(得分:1)

find dirOut -type f -exec grep -l Hello {} +

-l选项告诉grep如果找到匹配项,只列出文件名,而不是显示所有匹配的行。

您也可以使用-R grep选项以递归方式搜索目录,而不是使用find

grep -R -l Hello dirOut

答案 2 :(得分:0)

find . -type f -name \* -exec grep -l "hello" {} \;

在dirOut中执行此命令。