从Linux终端中运行的php脚本停止无限循环

时间:2016-05-15 17:44:38

标签: php linux terminal exit

我目前正在学习如何在php中创建队列的教程。在php脚本中创建了一个无限循环。我简化了代码,以便专注于手头的问题:

while(1) {
        echo 'no jobs to do - waiting...', PHP_EOL;
        sleep(10);  
}

我使用PuTTy(使用SSH连接)连接到我的共享主机帐户(godaddy)中的linux终端。如果我运行php queuefile.php,我知道它将运行没有问题(已经使用有限的 for循环而不是无限的 while循环测试了代码。)< / p>

问题:一旦启动,我怎么能退出无限循环?我已经在线阅读了创建代码的选项&#34;检查&#34; 是否应继续使用以下代码循环:

$bool = TRUE; 
while ($bool)
{
  if(!file_exists(allow.txt)){$bool = FALSE}
  //... the rest of the code

虽然我很好奇是否可能有一个命令我可以在终端中键入,或者我可以推送的一组键会导致脚本终止。如果有任何方式终止脚本,或者有更好的方法来制作之前的&#34;检查&#34; ,我会很乐意收到您的反馈!

2 个答案:

答案 0 :(得分:2)

Ctrl + C 应该停止正在运行的正在运行的程序。

您也可以在登录其他会话时将其删除并执行一些ps aux | grep my-php-script.php并查看它是否是您的程序,然后您可以使用pkill -f my-php-script.php来终止此过程。

答案 1 :(得分:0)

我理解你想在你的服务器上制作cron。因此,您应该通过putty登录服务器并创建cron作业。 例如: 记录后......

crontab -e

然后添加

1 2 3 4 5 /path/to/command arg1 arg2