• ubuntu下使用crontab


    创建crontab任务

    参考:https://www.cnblogs.com/Icanflyssj/p/5138851.html

    3. crontab常用的几个命令格式

    crontab -l //显示用户的crontab文件的内容

    crontab -e //编辑用户的crontab文件的内容

    crontab -r //删除用户的crontab文件

    -------

    在第一次使用crontab -e,会要求选择编辑器,我选择是vim.basic

    编辑文件,内容如下

    root@ubuntu:/var/log# crontab -e
    # Edit this file to introduce tasks to be run by cron.
    # 
    # Each task to run has to be defined through a single line
    # indicating with different fields when the task will be run
    # and what command to run for the task
    # 
    # To define the time you can provide concrete values for
    # minute (m), hour (h), day of month (dom), month (mon),
    # and day of week (dow) or use '*' in these fields (for 'any').# 
    # Notice that tasks will be started based on the cron's system
    # daemon's notion of time and timezones.
    # 
    # Output of the crontab jobs (including errors) is sent through
    # email to the user the crontab file belongs to (unless redirected).
    # 
    # For example, you can run a backup of all your user accounts
    # at 5 a.m every week with:
    # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
    # 
    # For more information see the manual pages of crontab(5) and cron(8)
    # 
    # m h  dom mon dow   command
    * * * * * /home/xwdreamer/eclipse-workspace/RELEASED_V2_10_20180331/iotkit-embedded/output/release/bin/linkkit-example

     其他间隔执行时间设定

    每分钟执行      * * * * *
    每五分钟执行 */5 * * * * 每小时执行 0 * * * * 每天执行 0 0 * * * 每周执行 0 0 * * 0 每月执行 0 0 1 * * 每年执行 0 0 1 1 *

    日志服务

    参考:https://blog.csdn.net/ggz631047367/article/details/50185425

    ubuntu默认没有开启cron日志记录 
    1. 修改rsyslog 
    sudo vim /etc/rsyslog.d/50-default.conf 
    cron.* /var/log/cron.log #将cron前面的注释符去掉 
    2.重启rsyslog 
    sudo service rsyslog restart 
    3.查看crontab日志 
    less /var/log/cron.log

    注意:这里必须重启日志服务,重启以后使用less查看可能还没有日志,需要等任务执行以后才能看到日志。

    查看cron日志

    vim /var/log/cron.log 

    在日志中找到

    No MTA installed, discarding output 

    解决方案:将日志输出到指定文件

    */5 * * * * /home/xwdreamer/iotkit/linkkit-example_INV/linkkit-example_INV > linkkit-example_INV_temp.log

    完整如下

    root@ubuntu:~# crontab -e
    # Edit this file to introduce tasks to be run by cron.
    # 
    # Each task to run has to be defined through a single line
    # indicating with different fields when the task will be run
    # and what command to run for the task
    # 
    # To define the time you can provide concrete values for
    # minute (m), hour (h), day of month (dom), month (mon),
    # and day of week (dow) or use '*' in these fields (for 'any').# 
    # Notice that tasks will be started based on the cron's system
    # daemon's notion of time and timezones.
    # 
    # Output of the crontab jobs (including errors) is sent through
    # email to the user the crontab file belongs to (unless redirected).
    # 
    # For example, you can run a backup of all your user accounts
    # at 5 a.m every week with:
    # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
    # 
    # For more information see the manual pages of crontab(5) and cron(8)
    # 
    # m h  dom mon dow   command
    */5 * * * * /home/xwdreamer/iotkit/linkkit-example_INV/linkkit-example_INV > linkkit-example_INV_temp.log 
    */5 * * * * /home/xwdreamer/iotkit/linkkit-example_penguan/linkkit-example_penguan > linkkit-example_penguan_temp.log
    

    最后日志会被输出到当前账户下的目录,比如当前这个文件被输出到/root目录下

    root@ubuntu:/home/xwdreamer/iotkit# find / -name linkkit-example_INV_temp.log
    find: ‘/run/user/1000/gvfs’: Permission denied
    /root/linkkit-example_INV_temp.log
    find: ‘/mnt/hgfs’: Protocol error
  • 相关阅读:
    OpenMP vs WinSxS
    JIT, dynarec and binary translation
    VC++2010 bug
    控制和释放共享内存块
    分配和释放信号量
    代码列表5.1 (shm.c) 尝试共享内存
    绑定和脱离
    信号量
    每个字段动态添加一个随机数
    最近做了一个红底鞋类电商网站
  • 原文地址:https://www.cnblogs.com/xwdreamer/p/8980719.html
Copyright © 2020-2023  润新知