Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在系统上的所有文件中查找字符串_Php_Ubuntu_Grep - Fatal编程技术网

Php 在系统上的所有文件中查找字符串

Php 在系统上的所有文件中查找字符串,php,ubuntu,grep,Php,Ubuntu,Grep,使用PHP,如何找到整个系统(我使用的是ubuntu)中包含字符串errorlog的所有文件。 我尝试了exec()和grep,但只出现了一次。谢谢。使用php,它需要一个遍历整个系统的例程,例如,递归地打开每个有特定结尾的文件,然后遍历该文件,观察每一行的sting外观,找到字符串时将其保存在某个地方 顺便说一句,PHP并不是搜索整个系统中某个字符串外观的最佳候选者。如果可能的话,我宁愿选择另一种在处理系统任务时稍微快一点的语言 在windows下,我使用记事本++作为工具来搜索某个文件夹及其

使用PHP,如何找到整个系统(我使用的是ubuntu)中包含字符串
errorlog
的所有文件。
我尝试了
exec()
grep
,但只出现了一次。谢谢。

使用php,它需要一个遍历整个系统的例程,例如,递归地打开每个有特定结尾的文件,然后遍历该文件,观察每一行的sting外观,找到字符串时将其保存在某个地方

顺便说一句,PHP并不是搜索整个系统中某个字符串外观的最佳候选者。如果可能的话,我宁愿选择另一种在处理系统任务时稍微快一点的语言

在windows下,我使用记事本++作为工具来搜索某个文件夹及其所有子文件夹,以查找某个字符串的所有出现情况。

您可以使用
grep-R“errorlog”/
递归搜索系统上的所有文件,以查找字符串“errorlog”。
使用php
exec
从php执行它。

您的意思是在服务器上/*;或者只是一个子目录结构

听起来你确实想用shell来寻找答案

(搜索pwd;出于性能原因,我会查看-maxdepth)


Notepad++在搜索时会阻止程序,并且不会显示任何进展。出于这个原因,我更喜欢使用另一个程序进行搜索。他们真的应该将其移动到一个单独的线程,并显示搜索进度或当前搜索位置。
find . -exec grep "www.athabasca" '{}' \; -print