背景:

很多场景下需要定期执行脚本,计划任务能够完美解决定期执行脚本的问题

使用方法:

crontab 是一个用于定时执行任务的工具,

crontab 的基本格式如下:

*     *     *   *    *        command
-     -     -   -    -
|     |     |   |    |
|     |     |   |    +----- day of the week (0 - 6) (Sunday=0)
|     |     |   +------- month (1 - 12)
|     |     +--------- day of the month (1 - 31)
|     +----------- hour (0 - 23)
+------------- min (0 - 59)
特殊字符
*:表示任何时间,例如 */5 表示每5分钟。

-:表示一个范围,例如 1-3 表示1点到3点。

,:表示一个列表,例如 1,2,3 表示1点、2点和3点。

/:表示起始时间开始,每隔一定时间执行一次,例如 */10 表示从0分钟开始,每隔10分钟执行一次。

L:表示列表中的最后一个元素,例如 5L 表示一个月中的最后一天。

W:表示有效工作日(周一到周五),仅用于日期字段。

#:表示星期几的第几个周,例如 6#3 表示一个月中第3个周六。

命令行操作:

crontab -l #查看当前用户的crontab

crontab -e #编辑当前用户的crontab

示例
每分钟执行一次:
*/1 * * * * command

每小时的第10分钟执行:
10 * * * * command

每天的23:00执行:
0 23 * * * command

每周一的23:00执行:
0 23 * * 1 command

每月的最后一天23:00执行:
0 23 L * * command

每月的第3个周六23:00执行:
0 23 6#3 * * command

注意事项

1.确保 cron 服务正在运行。

2.命令中的路径需要是绝对路径。

3.确保脚本有执行权限。

4.错误日志通常记录在 /var/log/syslog 或 /var/log/cron。