Linux实操----crond任务调度

原理示意图

在这里插入图片描述

概述

任务调度:是指系统在某个时间执行的特定的命令或程序。
任务调度分类:
1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
2.个别用户工作:个别用户可能希望执行某些程序,比如对 mysql 数据库的备份。

基本语法

crontab [选项]
选项说明:
在这里插入图片描述

快速入门

任务要求:
设置任务调度文件:/etc/crontab
设置个人任务调度。执行 crontab –e 命令。接着输入任务到调度文件
如:*/1 * * * * ls –l /etc/ > /tmp/to.txt
意思说每小时的每分钟执行 ls –l /etc/ > /tmp/to.txt 命令

任务步骤:
1)cron -e
2)*/ 1 * * * * ls -l /etc >> /tmp/to.txt
3)当保存退出后就程序。
4)在每一分钟都会自动的调用 ls -l /etc >> /tmp/to.txt

脚本中的占位符的详细说明:

项目 含义
第一个*号 一个小时中的第几分钟
第二个*号 一天中的第几个小时
第三个*号 一个月中的第几天
第四个*号 一年中的第几个月
第五个*号 一周中的星期几

在这里插入图片描述

案例演示

案例 1:每隔 1 分钟,就将当前的日期信息,追加到 /tmp/mydate 文件中。(sh脚本的方式)
步骤:
1)先编写一个文件 /home/mytask1.sh date >> /tmp/mydate
2)给 mytask1.sh 一个可以执行权限 执行chmod 744 /home/mytask1.sh
3)crontab -e
4)*/1 * * * * /home/mytask1.sh
5)成功

案例 2: 每天凌晨 2:00 将 mysql 数据库 testdb ,备份到文件中mydb.bak。
1)先编写一个文件 /home/mytask3.sh
/usr/local/mysql/bin/mysqldump -u root -proot testdb > /tmp/mydb.bak
2)给 mytask3.sh 一个可以执行权限 chmod 744 /home/mytask3.sh
3)crontab -e
4)0 2 * * * /home/mytask3.sh
5)成功

相关指令

  1. conrtab –r:终止任务调度。
  2. crontab –l:列出当前有那些任务调度
  3. service crond restart [重启任务调度]

猜你喜欢

转载自blog.csdn.net/qq_40927884/article/details/89066218