gpt4 book ai didi

php - 从 PHP 调用 "grep"和 "head"

转载 作者:可可西里 更新时间:2023-10-31 23:48:43 25 4
gpt4 key购买 nike

我正在尝试过滤目录中文件集的内容,并使用这样的命令仅输出前 n 行:

gzip -dc $(find %pathtofolder%) | grep 27990 | head -n 50

在终端中运行此命令需要几秒钟才能完成。但是当我从 PHP 运行它时,它需要将近一个小时,因为文件的总大小很大。似乎 php 一直等到 gzip 命令完成。但是如果我简单地运行:

gzip -dc $(find /opt/data/bi/ets/20130616) | head -n 50

它立即给出结果。我尝试了反引号、exec、系统。

这里是php代码:

$cmd = 'gzip -dc $(find '.$path.' | grep -E "'.$regexp.'") | grep -E "'.$this->_buildRegExp().'" | head -n '.$r['limit'];
$res = `$cmd`;

如何解决这个问题?

最佳答案

使用 passthru 而不是 exec 来获取所有输出,而不仅仅是最后一个字符串

passthru($cmd, $output);
echo $output;

关于php - 从 PHP 调用 "grep"和 "head",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17218846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com