带有重定向的PHP exec()nohup

带有重定向的PHP exec()nohup,php,exec,stdout,stderr,nohup,Php,Exec,Stdout,Stderr,Nohup,我试图用exec()执行一个命令,并将stdout和stderr重定向到一个文件 exec(“nohup python main.py-i 1>/var/scripts/logs/1_out.log 2>&1&”) 它将创建文件,但不会向其中打印任何内容 如果在终端中运行该命令,所有输出都不会出现问题。使其正常工作。Python有自己的输出缓冲,这使它无法写入文件。使用-u选项运行它将禁用此功能。最终代码如下所示: exec(“nohup python-u main.py-i 1>/var/sc

我试图用exec()执行一个命令,并将stdout和stderr重定向到一个文件

exec(“nohup python main.py-i 1>/var/scripts/logs/1_out.log 2>&1&”)

它将创建文件,但不会向其中打印任何内容


如果在终端中运行该命令,所有输出都不会出现问题。

使其正常工作。Python有自己的输出缓冲,这使它无法写入文件。使用-u选项运行它将禁用此功能。最终代码如下所示:


exec(“nohup python-u main.py-i 1>/var/scripts/logs/1_out.log 2>”&1尝试添加
仍然没有任何内容。
exec(“nohup main.py-i 1>/var/scripts/logs/1_out.log 2>”&1并且是否存在任何nohup.out文件(默认文件nohup将标准输出重定向到)检查我的答案。通过使用python的-u选项,它禁用了python的输出缓冲区,使它工作起来。