
| 字段 | 是否必填 | 允许值 | 允许特殊字符 | 备注 |
|---|---|---|---|---|
| Seconds | 是 | 0–59 | *,- |
标准实现不支持此字段。 |
| Minutes | 是 | 0–59 | *,- |
|
| Hours | 是 | 0–23 | *,- |
|
| Day of month | 是 | 1–31 | *,-?LW |
?LW只有部分软件实现了 |
| Month | 是 | 1–12 or JAN–DEC | *,- |
|
| Day of week | 是 | 0–7 or SUN–SAT | *,-?L# |
?L#只有部分软件实现了Linux和Spring的允许值为0-7,0和7为周日Quartz的允许值为1-7,1为周日 |
| Year | 否 | 1970–2099 | *,- |
标准实现不支持此字段。 |
完整的 cron 标准,下面是不同的实现
可能互相之间有兼容不兼容
最好看语言或者框架都实现了哪些,按照其实现来填写就可以,下面是列举的几个实现
# 每月的最后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)
例子:
# 每月的最后1天
@Scheduled(cron = "0 0 18 28-31 * ?")
public void doAtLastDayOfMonth() {
final Calendar calendar = Calendar.getInstance();
if (c.get(Calendar.DATE) == c.getActualMaximum(Calendar.DATE)) {
// do something here...
}
}
说明:
Java(Spring)
* * * * * *
- - - - - -
| | | | | |
| | | | | +----- 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)
| +------------------------- min (0 - 59)
+------------------------------ second (0 - 59)
例子:
# 每月的最后1天
@Scheduled(cron = "0 0 18 L * ?")
public void doAtLastDayOfMonth() {
// do something here...
}
说明:
Java(Quartz)
* * * * * * *
- - - - - - -
| | | | | | |
| | | | | | + year [optional]
| | | | | +----- day of week (1 - 7) sun,mon,tue,wed,thu,fri,sat
| | | | +---------- month (1 - 12) OR jan,feb,mar,apr ...
| | | +--------------- day of month (1 - 31)
| | +-------------------- hour (0 - 23)
| +------------------------- min (0 - 59)
+------------------------------ second (0 - 59)
0 15 10 ? * MON-FRI
这个就不支持,javaquartz 就支持,所以 node nestjs 就用 linux cron 标准就行
* * * * * *
| | | | | |
| | | | | day of week
| | | | months
| | | day of month
| | hours
| minutes
seconds (optional)