[英]How to run a php script through the command line (and keep it running after logging out)
我试图通过命令行在我的远程虚拟专用服务器上运行PHP脚本。 我遵循的流程是:
脚本运行得很好。 但问题是,一旦我关闭PuTTY控制台窗口,脚本就会停止运行。
我需要脚本继续无休止地运行。 我怎样才能做到这一点? 我在服务器上运行Debian。
提前致谢。
我相信Ben有正确的答案,即使用nohup命令。 nohup代表nohangup并且意味着你的程序应该忽略一个挂断信号,当你通过注销或者你已经超时你的putty会话断开连接时产生。
您需要知道命令的输出将附加到名为nohup.out的当前目录中的文件中(如果权限阻止您在当前目录中创建nohup.out,则会附加到$ HOME / nohup.out)。 如果您的程序生成大量输出,那么此文件可能会变得非常大,或者您可以使用shell重定向将脚本的输出重定向到另一个文件。
nohup php myscript.php >myscript.output 2>&1 &
此命令将运行您的脚本并将所有输出(标准和错误)发送到文件myscript.output,每次运行程序时都会重新创建。
最后的脚本会导致脚本在后台运行,因此您可以在运行或注销时执行其他操作。
一个简单的方法是通过nohup运行它:
nohup php myScript.php &
如果在screen
运行php命令,请关闭screen
,然后在关闭控制台时不会终止。
Screen是一个终端多路复用器,允许您通过一个物理终端管理许多进程。 每个进程都有自己的虚拟窗口,您可以在与每个进程交互的虚拟窗口之间进行跳转。 屏幕管理的进程在其窗口未激活时继续运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.