1、什么是定时任务
在指定的时间周期运行指定的任务。
只要是一个开发语言,都有定时任务。
2、Linux中的定时任务(crontab)
1) 定时任务如何开启和关闭
cron服务的相关命令:
启动定时任务的服务: systemctl start crond
关闭定时任务的服务: systemctl stop crond
重启定时任务的服务: systemctl restart crond
重新载⼊定时任务的配置:systemctl reload crond
查看定时任务的状态: systemctl status crond
不管是网络服务,还是防火墙,还是其他的,都是 start stop restart status
2)如何编写定时任务
crontab -e 进入定时任务的编辑界面
每隔一分钟,执行一次echo "hello" >> /home/a.txt
每次新建了一个定时任务后,一定要reload 一下
systemctl reload crond
可以使用:
tail -f /home/a.txt
来查看命令是否生效,ctrl+c结束查看
3) 定时任务的语法格式(通用,跟正则表达式)
格式如下:
* * * * * user-name command to be executed
共有六部分组成,分别表示: 分 时 ⽇ ⽉ 星期 要运⾏的命令 解析:
minute: ⼀⼩时中的哪⼀分钟 [0~59]
hour: ⼀天中的哪个⼩时 [0~23]
day: ⼀⽉中的哪⼀天 [1~31]
month: ⼀年中的哪⼀⽉ [1~12]
week: ⼀周中的哪⼀天 [0~6] 星期日是0 ,星期6 是 6
commands: 执⾏的命令
注意:
1、执行的命令是否可以执行
2、可执行的脚本你是否赋予了权限 比如自定义的脚本需要赋予权限才能运行
3、*/num 表示频率
4、如果是相连的时间使用 - 比如,周一到周五 1-5
如果时间不是相邻的,使用逗号(,)即可。 比如 8,10,12
可以使用生成器