【发布时间】:2010-10-06 04:11:06
【问题描述】:
目标:制作一个进度条,用户可以在其中查看我的服务器下载了多少文件。
场景:我有一个 PHP 脚本,它通过 popen 执行 python 脚本。我是这样做的:
$handle = popen('python last', 'r');
$read = fread($handle, 4096);
pclose($handle);
这个 python 脚本输出到 shell 是这样的:
[last] ZVZX-W3vo9I: Downloading video webpage
[last] ZVZX-W3vo9I: Extracting video information
[download] Destination: myvideo.flv
[download] 9.9% of 10.09M at 3.30M/s ETA 00:02
问题:当我读入由shell输出生成的文件时,我得到了除了最后一行之外的所有shell输出!?为什么?
补充一点,当我通过 shell 运行命令时,shell 光标出现在该行的末尾并等待脚本完成。
谢谢大家
【问题讨论】:
-
通读您的问题,我不禁注意到您遇到的 problem (输入中缺少行)与问题标题无关。您可能会更改标题以解决您的问题。也许“PHP:从 shell 读取输出”更好,因为这与 AJAX 无关。
标签: php linux shell command-line