Debian(以及大多数Linux发行版)中的crontab语法遵循标准的UNIX cron格式。Crontab文件是一个文本文件,其中包含了一系列的指令,用于定义在特定时间执行的任务。每个指令都代表一个cron作业(cron job)。
Crontab文件的基本格式如下:
* * * * * command-to-execute
- - - - -
| | | | |
| | | | ----- Day of the week (0 - 7) (Sunday to Saturday; 7 is also Sunday)
| | | ------- Month (1 - 12)
| | --------- Day of the month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
每个字段可以是一个具体的数字、一个范围、一个列表或者一个通配符(*),用来指定在什么时间执行命令。
*
表示“每个”可能的值。例如,* * * * *
表示每分钟都执行。-
用于指定一个范围。例如,1-5
在分钟字段中表示从第1分钟到第5分钟。,
用于指定一个列表。例如,1,3,5
在分钟字段中表示在第1、3和5分钟执行。/
用于指定步长值。例如,*/15
在分钟字段中表示每15分钟执行一次。下面是一些具体的例子:
# 每天凌晨1点执行命令
0 1 * * * /path/to/command
# 每周一至周五的上午10点执行命令
0 10 * * 1-5 /path/to/command
# 每月的1号和15号的下午3点执行命令
0 15 1,15 * * /path/to/command
# 每小时的整点执行命令
0 * * * * /path/to/command
# 每天的晚上11点到凌晨1点之间,每隔30分钟执行一次命令
30 23-1/30 * * * /path/to/command
要编辑用户的crontab文件,可以使用crontab -e
命令。要查看当前用户的crontab列表,可以使用crontab -l
命令。要删除当前用户的crontab文件,可以使用crontab -r
命令。请注意,这些命令需要相应的权限才能执行。