我使用这个小PHP代码是为了镜像任何文件到我的服务器。
<?php
$cmd= "curl -L -O http://www.dropbox.com/s/8lu0nutt4tgpkku/jbtools.ipa";
exec($cmd);
?>
但是浏览器正在冻结,直到镜像过程完成。我的问题是,当我在终端中运行此命令时,如何显示进度条?像这样:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
我尝试了很多标志,比如:
-v --verbose -I -include --trace -
但是没有一个成功。我也问了一个问题,这里转换成PHP CURL代码,但没有人可以帮助我!
如果不可能,建议我用其他命令来做同样的工作,我真的很感激。
最简单的方法是轮询。在后台执行脚本,并直接输出(到一个文件),你的前端(js)可以轮询。
在后台执行,示例如下:https://felixmilea.com/2014/12/running-bash-commands-background-properly/
显示shell进程的可以通过管道到pv来完成:http://linux.die.net/man/1/pv
考虑尝试使用websockets:http://reactphp.org/-看看rachet项目。这将为您提供想要执行的任何内容的实时输出。