执行 artisan schedule:run 时强制所有任务运行

Posted

技术标签:

【中文标题】执行 artisan schedule:run 时强制所有任务运行【英文标题】:Force all tasks to run when executing artisan schedule:run 【发布时间】:2020-02-20 19:16:46 【问题描述】:

我们已安排一些任务在生产服务器上每 6 小时运行一次。

kernel.php

protected function schedule(Schedule $schedule)

    $schedule->exec('some/command')
        ->cron('* */6 * * *');

我知道如果将->cron() 替换为->everyMinute(),我可以强制运行此任务,然后运行artisan schedule:run。但是有没有另一种方法来运行这个任务,这样我们就不必在实时服务器上弄乱代码了?

如果没有其他解决方案,我们只需要等待 6 小时。

【问题讨论】:

【参考方案1】:

调度器所做的就是用你发送的任何参数调用 artisan。您可以在命令行中使用artisan 来执行相同的操作。

 php artisan some/command

【讨论】:

这个some/command 实际上有点复杂,有很多环境变量。我认为为我们运行任务是最简单的。

以上是关于执行 artisan schedule:run 时强制所有任务运行的主要内容,如果未能解决你的问题,请参考以下文章

如何知道最后一次执行工匠命令的时间?

在 laravel 控制台中执行 php artisan migrate 时出错

Laravel Artisan CLI 不执行命令

尝试在我的 linux ubuntu 20.04 中执行 PHP artisan serve 时遇到问题

无法执行 php artisan 命令 [php 致命错误 [

使用不同的 .env 从其他 Artisan 命令调用 Artisan 命令