-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontable任务
参数细节说明:
项目 | 含义 | 范围 |
第一个“*” | 一个小时当中的第几分钟 | 0-59 |
第二个“*” | 一天当中的第几个小时 | 0-23 |
第三个“*” | 一个月当中的第几天 | 1-31 |
第四个“*” | 一年当中第几个月 | 1-12 |
第五个“*” | 一周当中的星期几 | 0-7(0 和7代表周日) |
特殊符号 | 含义 |
* | 代表任时间,比如第一个“*”代表一个小时中每分钟执行一次 |
, | 代表不连续的事件。例如:"0 8,12,16 * * * "命令,就代表在每天的8点0分,12点的0分,16点的0分都执行一次命令 |
- | 代表连续的时间范围。例如“0 5 * * 1-6 命令”代表在周一到周六的凌晨5点0分执行命令 |
*/n | 代表每隔多久执行一次,例如“*/10 * * * * ”命令,代表每隔10分钟就执行一边命令 |
时间 | 含义 |
45 22 * * *命令 | 在22点45分执行命令 |
05 * * 1-5命令 | 每周一到周五的早上5点0分执行一次命令 |
*/10 4 * * 命令 | 每天凌晨4点,每隔10分钟执行一次命令 |
0 0 1,15 * 1 命令 | 几号最好不要同时出现。因为他们定义的都是天,容易让管理混乱 |
任务调度的实例:
1、每隔一分钟,将当前日期和日历都追加到/home/mycal文件中
1)在home下编写mytask2.sh
Cal >> /tmp/mycal
2)修改mytask2.sh权限
Chmod 744 mytask2.sh
3)编写定时任务
Crontab -e
*/1 * * * * /home/mytask2.sh
2、每天凌晨2点将mysql数据/库testdb,备份到mydb.bak
1)先编写一个文件/home/mytask3.sh
/user/local/mysql/bin/mysqldump –u root –p root testdb > /tmp/mydb.bak
2)修改mytask3.Sh权限
Chmod 744 mytask3.sh
3)crontab –e
0 2 * * * /home/mytask3.sh
1)crontab –r :删除任务调度
2)crontab -l 列出当前有哪些任务
3)service crond restart [重启任务调度]