Linux设置定时任务的方法步骤(Crontab)

Windows有设置定时任务的功能,那么Linux(测试环境为Centos7)上的定时任务怎么设置呢?
当时写了一个爬虫需要每天定时执行,百度了一下,几乎所有的教程都是通过Crontab这个工具来完成的。

一、安装

[root@CentOS ~]# yum install crontabs

二、添加定时任务及语法

  1. 添加定时任务

    默认情况下,系统会编辑当前登录用户的crontab命令集合。需要编辑其他用户的命令集合,请使用crontab -u username -e

    crontab -e
    

    输入上边的命令进入编辑页面,编辑页面常用命令:i(进入编辑模式,否则不可编辑)、点ESC然后“:wq”(保存并退出)

  2. 基本语法:

    两个的区别是是否输出日志
    (1)第几分钟 第几小时 第几日 第几月 星期几 需要执行的命令 > 日志路径 2>&1
    (2)第几分钟 第几小时 第几日 第几月 星期几 需要执行的命令

    取值范围:

    0-59 0-23 1-31 1-12 0-7 需要执行的命令

    在这里插入图片描述

    特殊字符的含义:

    字符含义
    *(星号)任何时刻都接受。
    ,(逗号)分隔时段的意思
    -(减号)一段时间范围内
    /数字(斜杠加数字)每隔 n 单位间隔

三、 查看定时任务

默认查看当前系统登录用户的Crontab命令集合,如需查看其他用户的Crontab命令集合请使用crontab -u username -l

crontab -l

四、 实例:(我执行的是个Python脚本)

  1. 每年的六月十日 10:5 执行一次

    5 10 10 6 * python3 /home/project/xpath_test.py
    
  2. 每天的三点,六点各执行一次

    0 3,6 * * * python3 /home/project/xpath_test.py
    
  3. 每天的8:20, 9:20,10:20,11:20各执行一次

    20 8-11 * * * python3 /home/project/xpath_test.py
    
  4. 每分钟执行一次任务

    * * * * *  python3 /home/project/xpath_test.py
    
  5. 每五分钟执行一次

    */5 * * * * python3 /home/project/xpath_test.py
    
  6. 每四个小时执行一个任务

    0 */4 * * * python3 /home/project/xpath_test.py
    
  7. 每周一十点执行一次

    00 10 * * 1 python3 /home/project/xpath_test.py
    
  8. 多个任务在一条命令中配置

    * * * * * python3 /home/project/xpath_test.py; python3 /home/project/xpath_test_2.py
    
  9. 每年执行一次任务

    @yearly python3 /home/project/xpath_test.py
    

    @yearly 类似于“0 0 1 1 *”。它会在每年的第一分钟内执行

  10. 系统重启时执行

    @reboot python3 /home/project/xpath_test.py
    
  11. 将所有的 cron 命令备份到文本文件当中

    这是一个当我们丢失了cron命令后方便快速的一个恢复方式。

    先检查当前的cron

    # crontab -l
    0 2 * * * python3 /home/project/xpath_test.py
    

    然后:备份cron到文件中

    # crontab -l > cron-backup.txt
    # cat cron-backup.txt
    0 2 * * * python3 /home/project/xpath_test.py
    

    接着:移除当前的cron(测试)

    
    # crontab -r
    # crontab -l
    no crontab for root
    

    恢复:从text file中恢复

    # crontab cron-backup.txt
    # crontab -l
    0 2 * * * python3 /home/project/xpath_test.py
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值