在最近的业务需求中遇到,所以记录下。
暂时只了解到通过crontab实现定时任务,是否有其他方式实现定时任务,暂时未了解到,待以后有了解到再进行补充
一、何为crontab
crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。
二、安装crontab
检查crontab是否安装
rpm -qa | grep crontab
如果没有显示对应的crontab,则说明没安装
yum -y install vixie-cron
yum -y install crontabs
三、crontab指令
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
service crond status //查看crontab服务状态
四、创建并开启定时任务
4.1 创建定时任务
切换目录至/etc,输入以下命令
crontab -e
进入定时任务编辑界面,输入对应定时任务和执行表达式:
* * * * * command
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
示例:
#每星期一早上0:0开始执行test脚本
0 0 * * 1 opt/test.sh
编辑完毕后
- 按下Ctrl+c键
- 按下Shift+q
- 输入wq,退出编辑状态
4.2 启用定时任务
service crond reload #重新载入配置
service crond start #启动服务
4.3 查看定时任务
输入命令查看当前的crond的任务列表
crontab -l