• Mac系统crontab 定时执行


    1、Linux和Mac下操作crontab都是一致的

    2、配置文件都在/etc/crontab下,如果没有就创建。

    3、crontab参数

      crontab [-u user] file crontab [-u user] [ -e | -l | -r ]

    -u user:用来设定某个用户的crontab服务;

    file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。

    -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。

    -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。

    -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。

    -i:在删除用户的crontab文件时给确认提示。

    4、配置环境变量,打开open ~/.bash_profile文件添加以下内容;

      EDITOR=vim crontab -e;export EDITOR

    5、crontab的文件格式

      eg:* * * * * sh /xxxxx/davecron.sh >>/xxxxx/davecron.log

     * 第1列分钟0~59
     * 第2列小时0~23(0表示子夜)
     * 第3列日1~31
     * 第4列月1~12
     * 第5列星期0~7(0和7表示星期天)
     * 第6列要运行的命令

    6、crontab服务的重启关闭
      Mac系统下:
      
    sudo /usr/sbin/cron start
      sudo /usr/sbin/cron restart
      sudo /usr/sbin/cron stop
      Ubuntu:
      
    sudo /etc/init.d/cron start
      sudo /etc/init.d/cron stop
      sudo /etc/init.d/cron restart

    7、单独执行.sh文件可以成功,加入crontab中,没有定时执行问题
      原因:环境变量问题
      解决:
        1.写shell脚本时头部添加:#!/bin/bash
        2.终端输入env查看系统变量
          

        3.将系统变量添加到shell文件中

      

         4.再次运行crontab定时执行,成功



     
     
  • 相关阅读:
    CentOS下Varnish实现动静分离
    Varnish语法
    Varnish日志切割+参数优化
    阿里云CentOS7下部署Django+uwsgi+pip3+pytz+python3
    搭建Hadoop伪分布式环境
    [Linux]-gitlab安装
    pyspider安装
    阿里云ECS搭建SVN
    在Ubuntu18.04安装Adobe Flash Player插件
    从SQL的视角用powershell
  • 原文地址:https://www.cnblogs.com/miracleflower/p/14875535.html
Copyright © 2020-2023  润新知