【发布时间】:2011-08-10 14:48:20
【问题描述】:
我正在尝试从 PHP 运行两个 exec 命令。一个是可能运行几分钟的脚本,并且它只能有一个实例。第二个 exec 只是检查第一个进程是否正在运行,然后让您再次运行它或重定向您。代码是这样的。
这是主要流程
$command = '/home/user/active/Nem-Swd.elf 30 > /dev/null 2>&1 & echo $!';
这是检查另一个是否已经在运行的进程。
exec("ps ax | grep $name 2>&1", $output);
我知道在 php API 中它说:
如果使用此函数启动程序,为了使其继续在后台运行,必须将程序的输出重定向到文件或另一个输出流。否则会导致 PHP 挂起,直到程序执行结束。
但我不明白这意味着什么。
【问题讨论】:
-
这意味着您需要将输出重定向到文件(文本文件、xml 文件等),以便您的 exec 语句在 PHP 程序退出后继续运行。
标签: php