📜  CRON 作业如何工作 (1)

📅  最后修改于: 2023-12-03 15:00:03.804000             🧑  作者: Mango

CRON 作业如何工作

CRON 作业是一种按预定时间间隔运行的程序。它通常用于自动执行定期任务,如备份数据、定期清理临时文件等。它是基于 UNIX/LINUX 系统的一种定时任务管理工具,可以充分利用系统资源,提高系统可靠性和稳定性。

CRONTAB 格式

CRONTAB 文件指定了 CRON 作业的时间间隔和需要执行的命令,其格式如下:

* * * * * command
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday is both 0 and 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
CRONTAB 文件

CRONTAB 文件是一个文本文件,其包含了需要执行的 CRON 作业的时间间隔和命令。CRONTAB 文件中的每一行代表一个 CRON 作业。要编辑 CRONTAB 文件,可以使用以下命令:

crontab -l  # 列出当前用户的 CRONTAB 文件内容
crontab -e  # 编辑当前用户的 CRONTAB 文件
crontab -r  # 删除当前用户的 CRONTAB 文件
实例演示

以下是一些 CRON 作业的实例:

  • 每天早上 7 点自动备份数据库:

    0 7 * * * /path/to/mysqldump --user=username --password=password dbname > /path/to/backup.sql
    
  • 每天午夜 12 点清理临时文件:

    0 0 * * * /usr/bin/find /tmp -type f -mtime +1 -delete
    
  • 每周日早上 8 点重启 Apache 服务:

    0 8 * * 0 /sbin/service httpd restart
    
注意事项
  • CRONTAB 的时间间隔是基于系统时间的,如果系统时间有误,可能会导致 CRON 作业执行时间不正确。
  • CRONTAB 中的命令需要使用绝对路径,否则可能无法执行。