CentOS7 使用定时任务
Posted yloved
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7 使用定时任务相关的知识,希望对你有一定的参考价值。
CentOS7 使用定时任务
这里以定时执行python脚本示例
1. centos7 安装定时任务
2. centos7 安装python3
3. 创建test.py文件编写python脚本,脚本中输出当前时间
import datetime
print(datetime.datetime.now())
4. 编辑定时任务
执行 crontab -e 打开编辑定时任务页面
在编辑页面输入:
*/1 * * * * /usr/local/bin/python3 /usr/local/sh/test.py >> /usr/local/sh/result.txt 2>&1
/usr/local/bin/python3 是python3编译器的完整路径
/usr/local/sh/test.py 是执行脚本的完整路径
/usr/local/sh/result.txt 是将控制台的标准输出流和标准错误流都重定向到文件的完整路径
注意:使用定时任务时,路径都必须为完整路径
执行 crontab -l 可以查看已有的定时任务
5. crontab 时间格式说明
格式为 : ? ? ? ? ?* * * * *
时间设定段(*表示任何时段)
解释 | minute | hour | day of mouth | month of year | day ?of week |
---|---|---|---|---|---|
* | * | * | * | * | |
含义 | 每个小时的第几分钟执行该任务 | 每天的第几个小时执行该任务 | 每月的第几天执行该任务 | 每年的第几个月执行该任务 | 每周的第几天执行该任务 |
取值范围 | 0~59 | 0~23 | 1~31 | 1~12 | 0~6(0表示周天) |
* :表示任意的时刻;如小时位 * 则表示每个小时
n :表示特定的时刻;如小时位 5 就表示5时
n,m :表示特定的几个时刻;如小时位 1,10 就表示1时和10时
n-m :表示一个时间段;如小时位 1-5 就表示1到5点
*/n : 表示每隔多少个时间单位执行一次;如小时位 */1 就表示每隔1个小时执行一次命令,也可以写成 1-23/1
示例:
5 * * * * Command ??? ??? ??? ??? ??? ??? ?每小时的第5分钟执行一次命令
30 18 * * * Command??? ??? ??? ??? ??? ?指定每天下午的 6:30 执行一次命令?
30 7 8 * * Command??? ??? ??? ??? ??? ??指定每月8号的7:30分执行一次命令?
30 5 8 6 * Command??? ??? ??? ??? ??? ?指定每年的6月8日5:30执行一次命令?
30 6 * * 0 Command??? ??? ??? ??? ?? ? ?指定每星期日的6:30执行一次命令
每天的下午4点、5点、6点的5 min、15 min、25 min、35 min、45 min、55 min时执行命令。?
5,15,25,35,45,55 16,17,18 * * * Command
6. 查看result.txt文件,每分钟都会打印出一个如下时间说明设置定时任务成功
2020-06-23 23:25:01.398091
2020-06-23 23:26:01.460073
2020-06-23 23:27:01.502959
2020-06-23 23:28:01.562219
2020-06-23 23:29:01.616191
以上是关于CentOS7 使用定时任务的主要内容,如果未能解决你的问题,请参考以下文章