美文网首页
【CRONTAB定时任务】

【CRONTAB定时任务】

作者: Y了个J | 来源:发表于2019-08-05 23:51 被阅读0次

    安装

    yum clean all
    yum update
    yum install -y cronie crontabs
    
    systemctl status crond
    #检查crond服务是否安装以及启动,&&前面命令执行成功后才会再去执行后面的命令
    yum list cronie && systemctl status crond
    #检查crontab工具是否安装
    yum list crontabs && which crontab && crontab -l
    

    编写定时任务

    crontab -e 
    输入i开始编辑
    * * * * * echo -e "this is a test output,每分钟执行一下" > /yangjun/test.out &
    按esc,:wq保存退出
    
    crontab -l
    systemctl restart crond
    systemctl status crond
    

    crontab配置文件

    系统配置 /etc/crontab
    vi /etc/crontab


    屏幕快照 2019-08-05 下午11.19.54.png
    crontab -e 编辑的命令最终保存到 /var/spool/cron/ 目录下
    
    #创建user01用户
    useradd user01  
    #登录到user01
    su - user01
    #返回root用户
    su - 
    

    环境变量

    添加PATH到/etc/crontab

    PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk1.8.0_111/bin
    

    在执行具体任务前引入系统/用户环境变量(推荐)

    先导入环境变量,再执行sh脚本
    30 2 * * * source /etc/profile;sh /root/test.sh  (系统级别的环境变量)
    30 2 * * * source ~/.bash_profile;sh /root/test.sh  (用户级别的环境变量)
    systemctl restart crond
    

    示例

    vi /etc/crontab
    在PATH的最后添加:/usr/local/jdk1.8.0_111/bin
    然后在最下面输入输出java版本的定时任务,见下图,按esc输入:wq保存退出
    最后systemctl restart crond
    
    屏幕快照 2019-08-05 下午11.39.02.png

    添加java系统级别环境变量
    vim /etc/profile在最下面输入


    屏幕快照 2019-08-05 下午11.42.07.png

    添加java用户级别环境变量
    vim ~/.bash_profile


    屏幕快照 2019-08-05 下午11.45.17.png

    编写shell脚本

    vi /yangjun/test.sh
    java -version 2> /yangjun/script.out
    按esc输入:wq保存退出
    
    crontab -e
    输入:
    30 2 * * * source /etc/profile;sh /yangjun/test.sh 
    30 2 * * * source /root/.bash_profile;sh /yangjun/test.sh 
    先导入环境变量,再执行sh脚本
    
    按esc输入:wq保存退出
    systemctl restart crond
    

    相关文章

      网友评论

          本文标题:【CRONTAB定时任务】

          本文链接:https://www.haomeiwen.com/subject/aliudctx.html