我試圖在我的AWS EC2實例中爲ec2-user
設置1月1日的cron作業。 當我做crontab -u ec2-user -l
,它顯示下面的輸出:如何安排Linux AMI上的Laravel應用程序的年度cron作業?
* * * * * usr/bin/php /var/www/html/artisan schedule:run >> /dev/null 2>&1
不過儘管以下是以Kernel.php
成立,工作從來沒有發射:
protected $commands = [
// Commands\Inspire::class,
Commands\TestYearlyJob::class,
];
protected function schedule(Schedule $schedule)
{
$schedule->command('table:test-yearly-job')->cron('0 0 1 1 *')
->timezone('Europe/London')
->appendOutputTo('../taskscheduler.log');
}
命令本身由工匠運行(我雙重檢查),所以它的邏輯很好。
我想知道是否有辦法通過->yearly()->at()
調度選項來做到這一點?或者可能用closure
真相測驗?但我不確定在那裏輸入when()
聲明的內容。請幫忙。
根據世界上的哪個地方,你可能已經過了1月1日的00:00,或者它還沒有發生。你如何測試它? –
當我將SSH登錄到我的服務器(位於倫敦地區)後,它爲我提供了我的時區(歐洲/倫敦)的正確日期。編輯:現在已過00:00 1月1日。 – omrakhur
@omrakhur如果過去的00:00,你將如何再次測試1月1日的場景。 –