2010-06-29 556 views
2

我想在php中运行一个shell脚本,但这个shell脚本需要很长时间才能执行(它已经睡眠了),我不希望Web服务器在执行此脚本时阻塞。 我在php中尝试了exec()shell_exec(),但服务器停止运行,直到shell脚本结束!如何在php中使用后台运行程序(非阻塞)?

我想在shell脚本中做fork本身,但我不知道该怎么做。我只是想让php脚本调用这个shell脚本并继续工作,我没有等待脚本的任何结果。

我试图与&后台运行的shell脚本仍然得到阻止:( 任何帮助,高度赞赏。

+2

看看这里:http://stackoverflow.com/quest离子/ 222414 /异步外壳执行在PHP中 – Mike 2010-06-29 08:59:42

+0

或在这里:[是否有任何替代shell_exec和proc_open在PHP?](http://stackoverflow.com/questions/2657412/are-there-any-alternatives -to-壳EXEC和进程内开式,PHP) – Gordon 2010-06-29 09:10:23

回答

2

我由脚本名称后添加

"> /dev/null 2>/dev/null &" 

解决的问题shell_exec() php函数

谢谢