我在laravel 5.3中开发了一个项目,在我创建的特定命令中打印了“Hello”。我想每1分钟后调用一次这个命令。我知道在linux中你可以使用cron来安排任务,但我使用的是Windows,因此我使用windows taks安排.bat文件在每1分钟后运行一次,但它不起作用。
我的.bat文件看起来像这样
cd c:\ Users \ User \ Desktop \ alerts
C:\ wamp64 \ bin \ php \ php7.0.10 \ php.exe工匠时间表:运行1 >> NUL 2>&1
Kernel.php中的schedule函数如下所示:
protected function schedule(Schedule $schedule)
{
$schedule->command('custome:command')->everyMinute();
}
并且将被调用的实际任务看起来像这样
public function handle()
{
echo 'Hello';
}
它没有给出任何输出。它应该在一分钟后自动打印“你好”吗?但事实并非如此。显示的输出在哪里?
我将为您简化流程。
你的.bat文件的内容应该是“C:\ wamp64 \ bin \ php \ php7.0.10 \ php.exe”“c:\ Users \ User \ Desktop \ alerts \ artisan”“schedule:run”
注意:根据你问题的目录。
创建一个任务并将此.bat文件作为Windows上任务计划程序中的“操作”进行调用。
public function handle(){ logger("Hello"); }
记录器功能会将您的消息输出到默认的laravel日志文件“laravel.log”,以便在底部查看。
希望它也能帮助别人。