Linux 如何全局搜索文件内容?grep 递归查找指定字符串

在 Linux 下,可以使用 grep 全局递归搜索文件内容,查找是否包含 ?>hello。

1. 搜索整个服务器

参数说明:

  • -r:递归搜索所有子目录
  • -n:显示匹配内容所在行号
  • -F:按普通字符串匹配,不使用正则表达式
  • 2>/dev/null:忽略权限不足等错误信息

2. 只搜索 PHP 文件(推荐)

如果你怀疑 PHP 项目被植入恶意代码,建议这样搜索:

这条命令只显示包含目标字符串的 PHP 文件路径。

3. 搜索所有文件,包括隐藏文件

其中 -a 表示将二进制文件也按文本处理。

4. 同时搜索多种可疑内容

注意,这些函数本身不一定是恶意代码,需要结合上下文判断。

我的建议: 如果你的服务器运行的是 PHP 网站,优先执行:

另外,如果 ?>hello 是 PHP 文件末尾突然多出来的内容,尤其是你自己没有写过的代码,就要警惕网站文件被篡改。

你这个 ?>hello 是网站页面突然输出的内容,还是怀疑服务器被植入了恶意代码?两种情况排查方法不一样。