Ubuntu 定时任务
Ubuntu 自带 cron 可用于定时执行任务,如果没装 sudo apt install cron
查看状态 pgrep cron
或 sudo systemctl status cron
没启动的话 sudo service cron start
添加定时任务 crontab -e
定时任务需要 root 权限的 sudo crontab -e
打开编辑器后根据语法编辑
cron 语法:
m h dom mon dow command
0-59 0-23 1-31 1-12 0-7 command
符号 | 含义 | 取值范围 |
---|---|---|
m | 表示分钟 | 0-59 |
h | 表示小时 | 0-23 |
dom | day of month,表示日期 | 1-31 |
mon | month,表示月份 | 1-12 |
dow | day of week,表示星期 | 0-7(共 8 个数,1-6 分别表示周一-周六,0 和 7 均表示周日) |
command | 待执行的命令 | - |
可使用符号
* 代表所有值
/ 代表“每”
- 代表范围
, 分割数字
例子:
2 * * * * ls #每个小时的第 2 分钟执行一次 ls 命令
30 7 * * * ls #每天 7:30 执行一次 ls 命令
30 20 * * 2 ls #每周二,20:30执行一次 ls 命令(0 和 7 表示星期天)
*/2 * * * * ls #每隔 2 分钟执行一次 ls 命令
0 */2 * * * ls #每两个小时整执行一次 ls 命令
30 7 3-6 * * ls #每个月的 3,4,5,6 号的 7:30 分各执行一次 ls 命令
30 7 3,6 * * ls #每月的 3 号和 6 号的 7:30 分各执行一次 ls 命令
添加完任务重启 sudo systemctl restart cron
列出 cron 服务内容 crontab -l
删除 cron 服务内容 crontab -r