当前位置: 代码迷 >> 综合 >> Linux下自动定时任务 cron 的应用 | (待完善)
  详细解决方案

Linux下自动定时任务 cron 的应用 | (待完善)

热度:76   发布时间:2024-01-16 21:29:54.0
  • 首先:用定时任务执行shell脚本,需要自己去读取环境变量,否则会 command not found , no such file or directory,所以使用绝对路径是良好的习惯
  • 其次:定时任务执行的相关信息会以mail的方式通知相应用户,排错的时候注意看你的邮件

  • crontab -u root -l 查看root的定时任务
  • crontab -u root -e 编辑root的定时任务,直接在打开那个文档里按照格式写任务即可
  • crontab -u root -r 删除某个用户的定时任务

  • 格式如下:


    • 命令部分格式如下:
      • /bin/sh /root/Day-Work/abt/verify.sh
      • 前面的/bin/sh是你运行脚本要使用的系统指令,后面那一部分则指定的是脚本的绝对路径

  • 几个符号的特殊含义:
    • *    代表取值范围内的所有数字
    • /     代表每
    • -     代表从哪个数字到哪个数字
    • ,     分离开几个离散的数字

  • 举几个例子:
    • 52 8 * * * /bin/sh /root/Day-Work/abt/verify.sh
      • 每天的8点52分执行一次后面的脚本
    • 45 4 1,10,20,22 * * /bin/sh /root/Day-Work/abt/verify.sh
      • 每个1、10、20、22号的4点45分执行一次后面的脚本
    • 10 1 * * 6,0 /bin/sh /root/Day-Work/abt/verify.sh
      • 每个周六和周日的1点10分执行一次后面的脚本
    • * */1 * * * /bin/sh /root/Day-Work/abt/verify.sh
      • 每一个小时执行一次后面的脚本
    • 7-23 */1 * * * /bin/sh /root/Day-Work/abt/verify.sh
      • 早上7点到晚上23点每1个小时执行一次后面的脚本
    • 23-7 */1 * * * /bin/sh /root/Day-Work/abt/verify.sh
      • 晚上23点到早上7点每一个小时执行一次后面的脚本
    • 0 11 4 * mon-wed /bin/sh /root/Day-Work/abt/verify.sh
      • 每月的4号与每周一到周三的11点执行一次后面的脚本
    • 0 4 1 jan * /bin/sh /root/Day-Work/abt/verify.sh
      • 1月1号的4点执行一次后面的脚本