Linux crontab使用

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。

cron表达式

cron表达式用于设置命令执行的周期规则,其格式为

minute hour day month week

这个表达式之于调度任务用途也很广泛,比如org.springframework.scheduling.quartz.CronTriggerBean也有cron表达式,但是语法略微有所不同

其中:

● minute:表示分钟,可以是从0到59之间的任何整数。
● hour:表示小时,可以是从0到23之间的任何整数。
● day:表示日期,可以是从1到31之间的任何整数。
● month:表示月份,可以是从1到12之间的任何整数。
● week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。

crontab文件

调度任务执行依据是crontab文件,每一行代表一个任务,可以使用#进行注释,风格如下

cron表达式1 command1
cron表达式2 command2
cron表达式3 command3

例子

# 每个整点执行command1
0 * * * * command1
# 每天的23点执行command2
0 23 * * * command2
# 每周的周一到周五的17点整,执行命令command3
0 17 * * 1-5 command3
# 每个月1号0点执行command4
0 0 1 * * command4
# 每个月最后一天command5
0 0 L * * command5
# 从下一个10的整数倍分钟开始,每隔10分钟执行一次 command6
*/10 * * * * command6

crontab命令

自带的help

Usage:
 crontab [options] file
 crontab [options]
 crontab -n [hostname]

Options:
 -u <user>  define user
 -e         edit user's crontab
 -l         list user's crontab
 -r         delete user's crontab
 -i         prompt before deleting
 -n <host>  set host in cluster to run users' crontabs
 -c         get host in cluster to run users' crontabs
 -s         selinux context
 -x <mask>  enable debugging

Usage当中的crontab [options] file即指定某个文件作为crontab的任务列表并载入crontab。

Options当中

● -u命令是用于指定某个用户,如果不加的话就是当前用户
● -e是编辑crontab文件的内容
● -l是显示crontab文件的内容
● -r是删除

上一篇:go语言 map的使用


下一篇:crontab