crontab用法

发布时间 2023-11-13 17:18:22作者: 付时凡

crontab用法

crontab可以定时执行某些操作,很实用。

通常Linux系统都已经自带。

  • 用法

    $ crontab -h
    crontab: invalid option -- 'h'
    crontab: usage error: unrecognized option
    usage:    crontab [-u user] file
        crontab [ -u user ] [ -i ] { -e | -l | -r }
            (default operation is replace, per 1003.2)
        -e    (edit user's crontab)
        -l    (list user's crontab)
        -r    (delete user's crontab)
        -i    (prompt before deleting user's crontab)
    
  • 显示当前已经添加到crontab的命令:

    $ crontab -l
    # 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
    *   0,12   *   *   *   /bin/bash /home/adam/git2/sync.sh
    
  • 将默认编辑器从nano转为vim(可以直接添加到.bashrc or .zshrc中):

    export EDITOR="/usr/bin/vim"
    
  • 修改后看到参数,其含义分别是:

    second/minute/hour/date of month/month/date of week/command

    *表示缺省,即不考虑这个时间;如分钟为*,则说明任意分钟都可以。