zoukankan      html  css  js  c++  java
  • ubuntu 的 crontab 计划任务

    写脚本的时候 需要开机定时执行,就用了crontab

    关于crontab的编写  网上一大堆,在这不在解释

    如下

    0 1 * * *  /usr/local/oakcloud/shell/synchronizeTime > /dev/null 2>&1

    这是每一个小时开机运行的一个cron  执行的是synchronizeTime 这个脚本,将一些信息输出 直接仍进黑洞里 ,一些错误的信息放在制定的文件里.

    在syncronizeTime 中有一个错误log的输出:

    date=`date +%Y-%m-%d%H:%M`
    
    echo $date '连通' >>network.log

    但是奇怪的是在/usr/local/oakcloud/shell/下 没有network.log文件的输出.

    在命令行直接

    ./synchronizeTime

    可以看到network.log的输出.

    后来多了解下crontab  发现如果在这里面的隐藏的信息  root用户执行这个语句.

    所以network.log 一定在/root里,后来验证了这个猜想.

    所以,这个解决方法有两种:

    1.重定向文件时写绝对路径,一定没错.

    2.执行crontab时使用 系统用户执行

        crontab -u user filename


    作者:Jghost
    本文版权归作者和博客园所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

  • 相关阅读:
    8.11记---我来啦!
    关于博主
    CSP-S 2019 第二轮 游记 AFO
    读入优化
    CSP-S 2019 第一轮 游记
    2019国庆正睿成都集训
    成外集训小记
    收藏夹(持续更新)
    博客建成
    博客施工中,敬请期待
  • 原文地址:https://www.cnblogs.com/Jghost/p/3573654.html
Copyright © 2011-2022 走看看