文章目录
1. cron 和 crontab
cron
和 crontab
是 Unix/Linux 系统上用于定期执行任务的工具。它们的主要区别和功能如下:
1.1 cron
- 定义:
cron
是一个守护进程 (daemon),用于在指定的时间和日期执行任务。在系统启动时启动,并在后台运行。 - 功能:
cron
根据特定的时间表自动运行任务或脚本。每个用户都可以有自己的cron
作业,但是通常也会有一个系统范围的cron
作业。 - 管理:
cron
守护进程负责调度和监听crontab
文件中定义的作业。它会定期检查这些文件,并在适当的时间执行所需的任务。
1.2 crontab
- 定义:
crontab
是一个命令和一组文件,用于配置任务和定义cron
要执行的作业。crontab
文件存储在特定的位置,通常是/var/spool/cron/crontabs
。 - 功能:每个用户都可以有一个
crontab
文件,用于定义他们自己的调度任务(作业)。crontab
文件中的每一行代表一个计划的任务,它包括执行的时间和要运行的命令。 - 命令:
crontab -e
:编辑当前用户的crontab
文件。crontab -l
:列出当前用户的所有cron
作业。crontab -r
:删除当前用户的crontab
文件。
1.3 crontab 文件的格式
crontab
文件的每一行都应该包含以下字段,指定何时执行任务和要执行的命令。每个字段之间用空格或制表符分隔:
# ┌───────────── 分 (0 - 59)
# │ ┌───────────── 时 (0 - 23)
# │ │ ┌───────────────── 日 (1 - 31)
# │ │ │ ┌─────────────── 月 (1 - 12)
# │ │ │ │ ┌───────────── 星期 (0 - 6) (周日到周六,7也是周日)
# │ │ │ │ │
# * * * * * 命令要执行的具体命令
1.4 示例
以下是一些示例,演示如何使用 c