通过PHP上的shell_exec执行wget是否允许我轻松关闭浏览器而无需等待它完成下载?

时间:2015-03-09 11:46:02

标签: php linux wget shell-exec

我只是想知道(因为我没有我的unix平台来测试)如果我通过PHP上的shell_exec()执行多命令行,我是否可以安全关闭浏览器而无需等待它完成?

因为据我所知,wget会继续下载文件(这就是为什么它比cURL更适合不稳定和慢速网络)。

现在我非常担心我的下载会被中断,并且每个文件的交叉检查是否完成都会产生更多的工作。

看看我的PHP生成的这个多行命令:截至目前,它等待下载完成 wget "hxxp:// - 01 [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 01 Preview [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 02 [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 02 Preview [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 03 [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 03 Preview [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 04 [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1 && wget "hxxp:// - 04 Preview [480p][TSR][AKS].mkv" --user=root --password=pw --directory-prefix="download here" -nc 2>&1

然后echo输出通过:

$output = shell_exec($exec);
echo $exec.'<br /><pre>'.$output.'</pre>';`

我愿意删除上面两行,只要我知道即使我关闭PHP脚本,多行命令也会在后台执行。

希望有人可以提供他们的见解或建议。

谢谢!

1 个答案:

答案 0 :(得分:1)

就像在命令字符串的末尾添加&一样简单,在后台运行wget,而不是让PHP等待命令退出。但是,您无法从命令中获取输出,因为它可能在脚本完成时仍在运行。