crontab定时执行命令

时间:2021-01-24 08:02:26

      Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。

     crontab用法:
     crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。 
     crontab –l : 显示 crontab 文件。 
     crontab -r : 删除 crontab 文件。
     crontab -ir : 删除 crontab 文件前提醒用户。

      在crontab文件中写入需要执行的命令和时间,该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下: 

minute hour day-of-month month-of-year day-of-week commands    

合法值为:00-59 00-23 01-31 01-12 0-6 (0 is sunday) 

除了数字还有几个特殊的符号:"*"、"/"和"-"、","

  • *代表所有的取值范围内的数字
  • "/"代表每的意思,"/5"表示每5个单位
  • "-"代表从某个数字到某个数字
  • ","分开几个离散的数字

    举例说明:
    写cron脚本文件,命名为git_bak.cron
    vim git_bak.cron
    15,30,45,59 * * * *  sh git_bak.sh     表示,每隔15分钟,执行一次git_bak.sh 脚本
    添加定时任务。执行命令
    crontab /root/git_bak.cron >~/log
    "crontab -l" 查看定时任务是否成功或者检测/var/spool/cron下是否生成对应cron脚本
    crontab -l
    15,30,45,59 * * * *  sh git_bak.sh
    结果程序会每隔15分钟执行一次脚本。