Linux之定时任务crontab详解
crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语 chronos(χρνο),原意是时间。通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。
在windows系统上有一个定时任务计划,通过一步步的设置就可以在某一个时间执行命令,像PHP就是执行bat文件,然后bat文件执行php文件,但是在linux上,就要使用crontab来做定时任务。而任务计划的执行是通过一个守护进程crond进行控制。
创建任务计划
登录linux服务器
输入crontab -e,输入后会自动进入vi编辑器,这时候就可以根据需求去写命令,写完保存退出即可。
保存完成后的文件在 /var/spool/cron/
编写定时计划
linux定时任务的时间有固定的格式,比如:
这个任务计划就是每隔一分钟执行一次test.php这个文件,可以看到crontab的任务计划一般分为两个部分,前面是时间,也就是定义在什么时间,后面就是在这个时间要做的事。
这里使用PHP语言,test.php文件的内容
<?php
file_put_contents('/home/test.php',date('Y-m-d H:i:s',time()),FILE_APPEND);
因此这个任务计划就是,每隔一分钟向home下的test.php文件里面写入时间
前面一般有五个*号使用5个时间表示
分 时 日 月 星期
例子
可以使用网上的在线工具测试任务计划写的对不对
https://tool.lu/crontab/
-
每隔一分钟执行一次
*/1 * * * *
-
在每天的凌晨1.30执行一次
30 1 * * *
-
每周一早8:00 执行
0 8 * * 1
-
每周1-5 晚7:30, 执行
30 19 * * 1-5
-
每工作日上午11:30, 下午5:30 执行
30 11,17 * * 1-5
-
每工作日上午11:30, 下午5:40 执行
30 11 * * 1-5
40 17 * * 1-5 -
每隔2天晚上6点, 执行
0 18 */2 * *
从上面的栗子中可以看见时间的语法:
*, 任意
*/N, 每隔N个时间单位
1-5, 范围
11,17 和
数字3, 时间点
时间后, 跟随执行脚本即可
命令
crontab -e 编写任务计划
crontab -l 列出现在所有的任务计划
crontab -r 删除任务计划
相关推荐:
以上就是Linux之定时任务crontab详解的详细内容,更多请关注其它相关文章!
下一篇: css3实现动画闪烁效果