【发布时间】:2014-11-18 09:22:54
【问题描述】:
我有一个 PHP 程序,它通过 exec() 在后台启动一个进程(进程的输出被发送到 /dev/null)。然后我使用exec("echo $!", $processes[0]),因为我想存储进程的ID,以便以后可以终止它。但是,$processes[0] 的结果是一个空数组。
为什么没有存储进程 ID?请注意,如果我执行后台进程然后从终端运行echo $!,则会正确输出进程 ID。另外需要注意的是,我使用的是基于 Linux 的 Raspberry Pi。
【问题讨论】:
-
第二个
exec()运行一个新的shell进程,它不知道之前的$!。