Linux 下的定时任务管理 Crontab

一、Crontab

在linux服务器端,有时候我们往往有定时任务的需求,系统内置的cron进程能满足我们的需求,cron搭配shell脚本功能非常强大哦。crontab命令是cron table的简写,是cron的配置文件,又叫作业列表。

crontab [-u username]    //省略用户表表示操作当前用户的crontab
    -e      (编辑工作表)
    -l      (列出工作表里的命令)
    -r      (删除工作作)

使用 crontab -e 进入当前用户的工作表Vim编辑,每行是一条命令。

crontab的命令构成为 时间+动作,其时间有分、时、日、月、周五种。如下,

值为0-59
值为0-23
值为1-31
值为1-12
值为0-6(0代表星期天,1代表星期一,以此类推)
0 6 * * * root /home/my/task/lala.py #每天6点执行lala.py python文件

0 3 * * * root /home/my/task/haha-start.sh #每天3点执行haha-start.sh脚本
  1. * 取值范围内的所有数字
  2. / 每过多少个数字
  3. - 从X到Z
  4. 散列数字

二、设置Crontab步骤

1、root登录linux,输入命令 crontab -e 进入编辑模式。

2、配置定时脚本,比如定期重启tomcat

0 3 */7 * * root /usr/local/tomcat/bin restart.sh

3、保存退出

三、Crontab服务启动关闭和开机启动

cron 是 linux 的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务,

service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
service crond status //查看crontab服务状态

CentOS加入开机启动

chkconfig –level 345 crond on

附录实例

1、每1分钟执行一次

* * * * * root /usr/local/my/test.sh

2、每小时的第3和第15分钟执行

3,15 * * * * root /usr/local/my/test.sh

3、在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * root /usr/local/my/test.sh

4、每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  * root /usr/local/my/test.sh

5、每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 root /usr/local/my/test.sh

6、每月1、10、22日的4 : 45执行

45 4 1,10,22 * * root /usr/local/my/test.sh

7、每周六、周日的1 : 10执行

10 1 * * 6,0 root /usr/local/my/test.sh

8、每天18 : 00至23 : 00之间每隔30分钟执行

0,30 18-23 * * * root /usr/local/my/test.sh

9、每星期六的晚上11 : 00 pm执行

0 23 * * 6 root /usr/local/my/test.sh

10、每一小时执行

* */1 * * * root /usr/local/my/test.sh
发布了125 篇原创文章 · 获赞 116 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/shipfei_csdn/article/details/103728854