Linux定时任务,Django_crontab设置,Django定时任务设置

Lan
Lan
2020-07-20 / 1 评论 / 1,140 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2020年07月20日,已超过1634天没有更新,若内容或图片失效,请留言反馈。

下载.pngDjango_crontab仅限于Linux系统(唉,可惜呀),这是我经过试验的出来的结论

首先呢,需要安装一下django_crontab,一如既往的pip

pip install django_crontab

然后在Django的settings中添加app,似乎要添置到前排才行。

INSTALLED_APPS = [
    'django_crontab',
    ......
]

再在settings中添加

CRONJOBS = [
    ('*/1 * * * *', 'Wei.core.task', ">> result.log")
]

这里的CRONJOBS固定的写法不用管,中括号内便是自己的任务。

首先是第一个参数:

'*/1 * * * *'

这个呢,和Linux下的crontab的执行时间计算一样的。

例子:
# 每月的最后1天
0 0 L * * *

说明:
Linux
*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- day of week (0 - 7) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
|    |    |    +---------- month (1 - 12) OR jan,feb,mar,apr ...
|    |    +--------------- day of month (1 - 31)
|    +-------------------- hour (0 - 23)
+------------------------- minute (0 - 59)
字段是否必填允许值允许特殊字符备注
Seconds0–59*,-标准实现不支持此字段。
Minutes0–59*,-
Hours0–23*,-
Day of month1–31*,-?LW?LW只有部分软件实现了
Month1–12 or JAN–DEC*,-
Day of week0–7 or SUN–SAT*,-?L#?L#只有部分软件实现了
Linux和Spring的允许值为0-7,0和7为周日
Quartz的允许值为1-7,1为周日
Year1970–2099*,-标准实现不支持此字段。

这个可以用网上的一些功能进行在线计算,百度自寻即可。

第二个参数,指定任务所在

'Wei.core.task'

我的这个意思就是在Wei这个app下的core.py中的task函数

第三个参数,指定日志文件

">> result.log"

签名的>>表示写入日志时追加写入,如需覆盖则为一个>

后面的就是文件路径了

0

评论 (1)

取消
  1. 头像
    212
    Windows 10 · Google Chrome

    22

    回复