Linux - 如何递归搜索所有非二进制(文本)文件中的某个字符串
- 在所有文件中搜索字符串
- 跳过二进制文件
- 递归地
- 列出文件名
- (如果可能的话,回显文件名的行+行号作为选项)
我在看 Bash:将大括号作为参数传递给 bash 函数 和如何仅在文本文件中搜索字符串? (递归地)
但没有找到答案,只有讨论
答案1
使用 GNU grep
,添加以下选项:
-F
或者--fixed-strings
-I
或者--binary-files=without-match
-r
或者--recursive
- 这是使用时的默认值,但可以使用或
-r
明确显示-H
--with-filename
-n
或者--line-number
所以
grep -FIrn string .
看man grep
。