要在linux中查找任何文件中对某个字符串的引用吗

要在linux中查找任何文件中对某个字符串的引用吗,linux,bash,Linux,Bash,我正在尝试搜索所有.PHP文件或所有.SH文件,以查找包含以下内容的任何引用: ‘进入tbl_free_minutes_mar’ 我可以通过命令行访问服务器,但文件可能分散在不同的目录中。对于所有目录 find / -type f \( -name '*.php' -o -name '*.sh' \) \ -exec fgrep 'into tbl_free_minutes_mar' {} \+ 对于其他地方较少的目录,只需给出路径列表,而不是/。要仅列出匹配的文件,请尝试fgrep-l。

我正在尝试搜索所有.PHP文件或所有.SH文件,以查找包含以下内容的任何引用:

‘进入tbl_free_minutes_mar’


我可以通过命令行访问服务器,但文件可能分散在不同的目录中。

对于所有目录

find / -type f \( -name '*.php' -o -name '*.sh' \) \
  -exec fgrep 'into tbl_free_minutes_mar' {} \+
对于其他地方较少的目录,只需给出路径列表,而不是
/
。要仅列出匹配的文件,请尝试
fgrep-l
。如果您的文件名可能不总是与
-name
条件中的通配符匹配,则可以扫描所有文件。

find/-type f\(-name\*.php-o-name\*.sh\)-exec grep'到tbl\u free\u minutes\u mar'{}/dev/null\


如果您知道要查找的一般区域,请将
find/…
更改为不太全面的内容,例如
find/home…

提供的
/base/path
是您要开始查找的路径。这将为您提供一个文件列表:

find /base/path -type f -iregex '.*\.\(php\|sh\)$' -exec grep -l 'into tbl_free_minutes_mar' '{}' \;