cron(クロン)とは?
自動でに定期的に実施する作業を登録する所。
laravelの場合、/app/Console/Kernel.phpのscheduleメソッドに登録したものをcron(crontab)に登録する 。
以下、laravel.logに10分毎に今の日時を表示させる登録の流れ。
成功例
①app/Console/Kernel.phpのscheduleメソッドに定期的に行いたいことを登録
※ここに直接書かなくても、make:commandで作ったコマンドを登録もできる
②php artisan schedule:runコマンド叩いてちゃんと実行されたらコードはOK
③PCにはいっているcronを使って①を登録、10分毎に実行させる。
ターミナルでcrontab -eコマンドで一番上に登録。
10分毎に実行させる
アスタリスクには(にある数字を入れられる)
分(0〜59) 時(0〜23) 日(1〜31) 月(1〜12) 曜日(0(日)〜6(土))
* * * * *
(例1)毎日10:30に実行させる
30 10 * * * cd /Users...
(例2)月曜朝8時に実行させる
0 8 * * 1 cd /Users...
(例2)30分毎に実行させる
*/30 * * * * cd /Users... /*をつけると「毎に」になる
PCから見たそのプロジェクトのパス
PCに入ってるPHP(ディレクトリ)を使ったコマンド実行 = 固定パス
エラーを書き出すlogファイルがあるパス(今回はlaravel.log)
発生したエラーを↑に書き出すのに必須
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
【cronはvimエディタだから以下の操作方法】
編集開始・入力→ i 押す
空白を消す→ dd
編集終了→ esc
保存→ :wq
※vim操作 vimを触った事がない人へ最低限の知識で編集する #Vim - Qiita
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
cronがトリガーとなり10分毎に実行される。
④crontabに登録されているトリガーはcrontab -lコマンドで確認可能
⑤crontabに登録されているトリガーはcrontab -rコマンドで削除可能