-3
<?php
while(true)
    {
    set_time_limit(2);
    $reas ="wake up from sleep!!!!!!!!!! \n ";
    echo $reas;
    sleep(5);
   // $readlen = 0;
    }
?>

我有这个代码。当我给

sudo php p1.php &

它只显示进程ID。

我在 ubuntu 工作

请帮我

我希望在我给 sudo php p1.php & 时执行我的代码中的 echo 语句

我想要的是,当我给 php p1.php& 时,要打印此代码“唤醒”的输出的 echo 语句(即)。

当我不单独给出“&”(即)php p1.php 时,代码工作正常

但是,我希望在前台运行的确切内容应该在后台运行

我怎样才能做到这一点?

有什么替代代码吗?

提前致谢

4

2 回答 2

1

&命令末尾的字符只是使进程在后台运行。

使用nohup命令将输出回显到文件。

在您的情况下,它将是:

nohup php p1.php>/path/to/output_file &
于 2013-10-17T12:24:32.473 回答
0

据我了解,当您在订单的最后一个字符处使用“&”运算符时,您的订单将在后台运行,不会显示任何消息,如果您有任何打印,那么它将丢失。使用类似的东西很好

$ php script.php > /dev/null &

通过这种方式,您会将打印发送到 null,但如果您需要当时的日志,您可以使用类似

$ php script.php > script.log &

并在需要时检查打印:

$ tail -f script.log

在任何 1 对 3 的订单中,您的控制台都会显示消息,不同之处在于您可以运行您的代码,并且您可以以任何方式处理消息而不会丢失它们

我希望它可以帮助您解决您的需要

于 2013-10-17T10:07:19.177 回答