将 Shell 作为 Cron 作业运行

使用 Shell 的常见做法是将其作为 Cron 作业运行,以便定期清理数据库或发送新闻稿。这非常容易设置,例如

  */5  *    *    *    *  cd /full/path/to/root && bin/cake myshell myparam
# *    *    *    *    *  command to execute
# │    │    │    │    │
# │    │    │    │    │
# │    │    │    │    \───── day of week (0 - 6) (0 to 6 are Sunday to Saturday,
# |    |    |    |           or use names)
# │    │    │    \────────── month (1 - 12)
# │    │    \─────────────── day of month (1 - 31)
# │    \──────────────────── hour (0 - 23)
# \───────────────────────── min (0 - 59)

您可以在此处了解更多信息:https://en.wikipedia.org/wiki/Cron

提示

使用 -q (或 –quiet) 为 Cron 作业静音所有输出。

共享主机上的 Cron 作业

在某些共享主机上,cd /full/path/to/root && bin/cake mycommand myparam 可能无法正常工作。您可以改为使用 php /full/path/to/root/bin/cake.php mycommand myparam

注意

必须通过在 php.ini 中包含 register_argc_argv = 1 来启用 register_argc_argv。如果您无法全局更改 register_argc_argv,可以通过使用 -d register_argc_argv=1 参数指定自己的配置来告诉 Cron 作业使用它。示例:php -d register_argc_argv=1 /full/path/to/root/bin/cake.php myshell myparam