美文网首页
虚拟环境中的crontab定时任务

虚拟环境中的crontab定时任务

作者: deBroglie | 来源:发表于2019-03-02 16:11 被阅读0次

问题

我有一个自动签到的小脚本,今天在日志里面发现,在重新初始化主机后连着几天已经都没有执行过了。

解决

经过简单的测试发现是缺少库,原来当我使用系统定时任务服务时,就不是在虚拟环境了,因此这些依赖库必须要安装在系统层。但这样不就违背了我隔离环境的初衷了么?所以还是不要在系统层安装,将定时任务的python3改成虚拟环境的python3所在的完整路径即可。

补充

为什么要使用系统定时任务呢?因为如果一直让脚本挂在后台运行,进程会一直占着资源,而实际上每天就是运行1秒钟的事。而Linux恰好有一个定时管理命令:crontab
最简单的操作是使用命令

$ crontab -e

然后系统会用默认的编辑器(如vi)打开任务配置文件。之前在Ubuntu上用的时候这个文件里面会有一段说明教你如何写定时任务的格式。不过我在阿里云ECS上的CentOS上打开的时候遇到是一个空文件,不过这不重要。每天定时执行的任务按照格式:

m h  * * *   <your_cmd>

填写(m是分钟(0~59),h是小时(0~23),剩余的三个*占位符依次代表“某一月的某一日期(1-31)”“月份(1-12或名称)”“周几(0-7或名称)”)即可。
下面列出几个不同需求的写法:

30 4  1,15 * 5    <your_cmd>      # run at 4:30 am on the 1st and 15th of each month, plus every Friday.
00 09-18  * * *    <your_cmd>      # run at every hour, on the hour, from 9 A.M. (09:00) through 6 P.M. (18:00), every day
0 9,18 * * Mon    <your_cmd>      # run at every Monday, at 9 A.M. and 6 P.M

甚至可以设定每隔两小时执行操作,详见参考资料

参考资料

[1] Linux crontab command

相关文章

  • crondtab 定时任务

    编辑定时任务 crontab -e 查看定时任务 crontab -l 删除定时任务 crontab -r 如:*...

  • linux crontab: 定时任务

    参考 crontab 定时任务 Linux之crontab定时任务

  • linux Crontab

    Linux Crontab:Linux中用于执行定时任务的工具crontab -e:编辑定时任务crontab -...

  • crond任务调度(定时任务调度)

    基本语法crontab [选项]选项-e : 编辑crontab定时任务-l : 查询crontab定时任务...

  • 虚拟环境中的crontab定时任务

    问题 我有一个自动签到的小脚本,今天在日志里面发现,在重新初始化主机后连着几天已经都没有执行过了。 解决 经过简单...

  • Linux定时任务Crontab

    定时任务服务提供crontab命令来设定任务 定时任务命令: 定时任务服务提供crontab命令来设定任务 cro...

  • Crontab

    crontab命令: crontab定时任务: example:

  • 常用的linux命令

    ①定时任务管理: crontab –l 查看定时任务 crontab -e 编辑定时任务 ②查看实时日志: tai...

  • Linux_315_Ansible模块之定时任务管理

    crond服务,定时任务服务crontab -l 查看定时任务crontab -e 添加定时任务 /usr/bin...

  • Linux定时任务

    Linux定时任务 centOS: 使用crontab -e //编辑 crontab -l //查看定时任务 生...

网友评论

      本文标题:虚拟环境中的crontab定时任务

      本文链接:https://www.haomeiwen.com/subject/sjoeuqtx.html