📜  crontab 片段 (1)

📅  最后修改于: 2023-12-03 14:40:15.825000             🧑  作者: Mango

crontab 片段介绍

crontab 是 Linux 系统中非常常用的计划任务管理工具。通过 crontab,用户可以定期地执行一些指定的命令或脚本,比如定期备份数据、清理缓存、定时发送邮件等操作。

语法格式

crontab 语法格式如下:

* * * * * command
- - - - -
| | | | |
| | | | ----- Day of the Week (0 - 7) (Sunday is both 0 and 7)
| | | ------- Month (1 - 12)
| | --------- Day of the Month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

上面的 * 表示任意值,command 表示要执行的命令或脚本。

例如,下面的示例表示每天的凌晨 3 点执行一次 backup.sh 脚本:

0 3 * * * /path/to/backup.sh
常用命令

下面是一些常用的 crontab 命令:

  • crontab -l:列出当前用户的所有计划任务。
  • crontab -e:编辑当前用户的计划任务。
  • crontab -r:删除当前用户的所有计划任务。
实例
  1. 每天的凌晨 3 点执行一次 /path/to/backup.sh 脚本:

    0 3 * * * /path/to/backup.sh
    
  2. 每周一到周五的中午 12:30 执行一次 /path/to/reminder.sh 脚本:

    30 12 * * 1-5 /path/to/reminder.sh
    
  3. 每月的第一天执行一次 /path/to/monthly-task.sh 脚本:

    0 0 1 * * /path/to/monthly-task.sh
    
注意事项
  1. crontab 任务运行的环境变量可能与用户默认 shell 的环境变量不同。如果脚本运行时需要特定的环境变量,应当在 crontab 中明确地进行设置。
  2. crontab 的定时任务执行时间不能保证精确到秒级别,有可能会与期望的运行时间前后几分钟。所以,在编写定时脚本时应当考虑到这一点。
  3. crontab 执行的脚本必须拥有可执行权限,否则会执行失败。