表达式字段
字段名 允许取值范围 允许特殊字符
分钟 0-59 , * - /
小时 0-23 , * - /
日 1-31 , * - /
月 1-12 或者jan feb mar apr may jun jul aug sep oct nov dec , * - /
星期几 0(礼拜天)-6(礼拜六)或者sun mon tue wed thu fri sat , * - /
","表示指定多个值,例如"0 15 1,2,3 * *"表示每个月1、2、3日下午15点执行计划任务。
"*"为通配符,表示任意值,例如"* * * * *"表示每分钟执行一次计划任务。
"-"表示某个时间段,例如上面描述的"0 15 1,2,3 * *"可改写为"0 15 1-3 * *",同样表示每个月1、2、3日下午15点执行计划任务。
"/"表示根据某个步长进行时间更替,例如:"* 12 10-16/2 * *"表示每个月的10日,12日,14日,16日的12点执行计划任务。
表示"星期几"操作要特别注意的是,"0"代表星期天;因此在实际的编写过程中,建议采用:"sun mon tue wed thu fri sat"进行处理。
复杂格式
字段名 允许取值范围 允许特殊字符
秒 0-59 , * - /
分钟 0-59 , * - /
小时 0-23 , * - /
日 1-31 , * - / ? L W C
月 1-12或者JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC , * - /
星期几 SUN MON TUE WED THU FRI SAT , * - / ? L W C
年(可选) 空或者1970-2099 , * - /
","表示指定多个值,例如"0 15 1,2,3 * *"表示每个月1、2、3日下午15点执行计划任务。
"*"为通配符,表示任意值,例如"* * * * *"表示每分钟执行一次计划任务。
"-"表示某个时间段,例如上面描述的"0 15 1,2,3 * *"可改写为"0 15 1-3 * *",同样表示每个月1、2、3日下午15点执行计划任务。
"/"表示根据某个步长进行时间更替,例如:"* 12 10-16/2 * *"表示每个月的10日,12日,14日,16日的12点执行计划任务。
"?"只能用于"一个月中的某一天"和"一周中的某一天",而且不能同时使用。他表示一个不确定的值,例如:"0 0 6 * * ?"表示每天上午6点执行。
"L"表示"最后"的意思,用于"某月的最后一天","某月的最后一周"等情况。例如:"0 15 10 L * ?"表示每个月最后一天上午10点15执行计划任务;"0 15 10 ? * FRIL"表示每个月最后一个星期五的上午10:15执行。
"#"用于两个数字之间,例如:"0 15 10 ? 6 FRI#2"代表"每年6月的第二个礼拜五"。
不允许同时指定"星期几"和"日"这两个字段,例如"0 15 10 5 6 FRI#2"以及"0 15 10 * 6 MON#2",类似与这两种格式的Cron脚本将不再被支持。