我处于某种情况,我需要在基于linux / ubuntu的盒子上手动重启队列,我被告知遵循的正确方法是使用屏幕命令行应用程序。
我在Ubuntu 14.X上,当我执行-ls
命令时,我实际上可以看到服务器上运行的会话。下面是我在屏幕会话之外运行的命令:
mycommandline$ php artisan queue:restart
现在问题是,如果从-ls
输出我抓住会话的端口以包含在我运行的命令中,我得到以下错误:
不能执行'php artisan queue':没有这样的文件或目录
我也尝试输入screen "php artisan queue:restart"
并且我一直遇到同样的问题。
我对屏幕程序一点儿都不熟悉,并且非常感谢任何指向正确方向的建议。
答案 0 :(得分:1)
好的挖掘谷歌我想出了下面的命令。鉴于我已经有一个正在运行的会话,我需要确保我在同一个会话上发送命令才能确定。以下是我最终做的事情,确认在屏幕会话中发生了某些事情:
luyanda@devbox:~$ screen -d -r 19167 -p0 -x stuff "free -g; php artisan queue:restart"
Attaching from inside of screen?
由于我没有看到任何明显的问题,我确信这是我需要做的事情,因为我的日志文件也在更新,这或者意味着队列永远不会停止工作或我设法重新启动它们。
我还有兴趣知道的是,如果我可以在其他地方输出输出,我怎么能真正看到我发送到其他会话的命令的输出。
有什么想法吗?