Laravel 计划任务不会将输出附加到文件

Joh*_*han 5 php laravel laravel-5.1

我每 5 分钟运行一次计划任务,为此我将其添加到scheduleApp\Console\Kernel 中

    

    $schedule->call(function(){   
        $this->bajarProveedores(); 
    })->everyFiveMinutes()
    ->appendOutputTo(storage_path('\logs\schedule.log'));

我试过对文件路径使用反斜杠和正斜杠,我曾经file_exists(storage_path('\logs\schedule.log'))检查文件是否在那里。该方法运行没有错误,它返回一个字符串,但没有附加任何内容schedule.log,该方法看起来像这样:

    私有函数 bajarProveedores()
    {
        尝试 {
       // 在这里做一些事情
        } catch (FileNotFoundException $exception) {
        死('文件:'。$文件名。'错误');
        }
        返回'文件:'.$文件名。' 好的';

    }

我检查了该文件是否存在,并且我正在使用 L5.1 在 Windows 上工作。这是正确的方法吗?

有什么建议?

小智 1

appendoutputTo() 和 sendOutputTo() 专用于命令方法,不支持 call 方法。如果您想使用这些功能,则必须使用 Command 方法。https://laravel.com/docs/5.1/scheduling#task-output

PS 我在 laravel 5.8 上,但仍然遇到这个问题,我认为它不支持调用,如果是这样,我还没有弄清楚。