0. 简介
在ubuntu中,我们一些自检脚本不但需要开机启动,同时在日常还需要定时启动,这是就需要我们设置定时启动来满足我们的需求。这里检索了网络上常用的方法,并整合成一套在ubuntu18,20上可用的定时启动任务操作
1. cron文件语法
crontab是linux中周期性的执行任务的一个守护进程,与windows下的计划任务类似
crontab使用最小维度为分钟
| 分 | 小时 | 日 | 月 | 星期 | 命令 | 注释 |
|–|–|–|–|–|–|–|–|
|0-59| 0-23| 1-31| 1-12| 0-6| cmd| 注释|
|5|||||ls| 每小时的第5分钟执行一次ls|
|30| 5 || * ||ls |每天的 5:30 执行ls|
|30| 7| 8| * |* |ls| 每月8号的7:30分执行ls命令|
|30 |5| 8 |6|| ls| 每年的6月8日5:30执行ls命令|
|30| 6 ||| 0| ls| 每星期日的6:30执行ls 0表示星期天|
|/5 |* |* |* |* |ls| 每5分钟执行ls|
|/1||||| ls |每1分钟执行ls|
|0 |||||ls| 每小时执行|
|0 |0 ||| * |ls| 每天执行|
|0| 0| * || 0 |ls| 每周日执行|
|0 |0| 1 || * |ls| 每月执行|
|0| 0 |1 |1 ||ls| 每年执行|
|15,30,45,59|| * || *| ls |每隔15分钟执行一次ls|
* 代表取值范围内的所有可用的值,例如*在指代month时表示每月执行/ 代表”每”,指定步进设置,如0-59/2定义每两分钟执行一次- 代表从某个数字到某个数字,例如1-4意思是整数1,2,3,4, 分开几个离散的数字,如:3,4,6,8表示这四个指定整数
2. 定时任务crontab
cron是一个Linux下的后台进程,用来定期的执行一些任务。因为我用的是Ubuntu,所以这篇文章中的所有命令也只能保证在Ubuntu下有效。
crontab -l #列出某个用户cron服务的详细内容crontab -r #删除某个用户的cron服务crontab file [-u user] #用指定的文件替代目前的crontab -e #编辑某个用户的cron服务crontab-c dir #指定crontab的目录
步骤1:
查看cron是否运行
ps -ef | grep cron
步骤2:
在/root/crontab下创建 crontab.cron 文件 内容见下面例子
crontab crontab.cron #将定时文件加到到订时器中crontab -l #检测定时任务有没有加入系统中,能看到上面2个定时任务说明成功;crontab -r #取消所有定时任务
步骤3:
crontab.cron内如如下
#每隔1分钟执行*/1 * * * * /root/crontab/syncDuser/syncDuser.sh#每天早上3点执行0 3 * * * /root/crontab/syncDuser/syncDuser.sh>>temp.log#注意当存在打印输出时候需要加上log
步骤4:
查看crontab日志
Ubuntu16中crontab默认日志没有开启,建议不要开
vim /etc/rsyslog.d/50-default.conf #修改rsyslog配置文件cron.* /var/log/cron.log #将cron前面的注释符去掉service rsyslog restart #重启rsyslogless /var/log/cron.log #查看crontab日志
3. 参考链接
/p/1beb4d6cea22
/katyusha1/article/details/78619549