博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于linux上cron服务的python封装工具
阅读量:6581 次
发布时间:2019-06-24

本文共 1463 字,大约阅读时间需要 4 分钟。

关于cron:定时任务服务,一般linux自带且已启动.(pgrep cron查看cron服务是否启动了.)

关于plan:一个通过python来定制cron服务的工具.其官网:
http://plan.readthedocs.org/
plan的使用例子:
例子1:

from plan import Plancron = Plan()output = dict(stdout='~/stdout.log', stderr='~/stderr.log')cron.command('date',             every='1.minute',             output=output,             )if __name__ == '__main__':    cron.run('update')

这样就加了一个定时计划任务.(可用命令crontab -l查看已添加的任务.)

例子2:

from plan import Plancron = Plan()output = dict(stdout='~/stdout.log', stderr='~/stderr.log')cron.command('echo ${PATH} && supervisord -v',             every='1.minute',             output=output,             )if __name__ == '__main__':    cron.run('update')

 查看日志,发现PATH变量只有/usr/bin:/bin.没有/usr/local/bin.而我的supervisord放在/usr/local/bin下面,所以提示/bin/sh: 1:找不到supervisord.

所以,如果要执行的任务包含了处于其他路径的命令,比如/usr/local/bin,需要这样:
例子3:

from plan import Plancron = Plan()output = dict(stdout='~/stdout.log', stderr='~/stderr.log')cron.command('PATH=${PATH}:/usr/local/bin && supervisord -v',             every='1.minute',             output=output,             )if __name__ == '__main__':    cron.run('update')

 上面都是用cron.command()来添加的,然后如果要添加执行的任务是python脚本,还可以这样:

例子4:

cron.script('trader_supvr_tool.py --supervisord=start-init',             every='1.minute',             path='~/work/xProject/etrader',             environment={
'PATH' : '${PATH}:/usr/local/bin' }, output=output, )

environment和path都是cron.script()支持的参数,而cron.command()忽略.

转载地址:http://quino.baihongyu.com/

你可能感兴趣的文章
8.1.3 在BroadcastReceiver中启动Service
查看>>
【python】入门学习(七)
查看>>
java.io.File中的pathSeparator与separator的区别
查看>>
MVC3中 ViewBag、ViewData和TempData的使用和区别
查看>>
泛型Dictionary的用法详解
查看>>
明晰三种常见存储技术:DAS、SAN和NAS
查看>>
ContentProvider简单介绍
查看>>
11.struts2文件上传
查看>>
样条之CatmullRom
查看>>
grep命令參数及使用方法
查看>>
Visual Studio 2014 CTPs 下载 和C# 6.0 语言预览版介绍
查看>>
js混淆 反混淆 在线
查看>>
Linux ftp
查看>>
大规模分布式数据处理平台Hadoop的介绍 一种可靠、高效、可伸缩的处理方案
查看>>
java代理ip有效检测
查看>>
总结5种比较高效常用的排序算法
查看>>
独立思考者模型:避开思维误区的沼泽 我们很多时很蠢
查看>>
解决简单恢复模式下产生的日志增长
查看>>
字符数组和结束符/0之间的关系
查看>>
照顾不周, 怎么会,今天是我打扰了 最简单的回答:“别客气,谢谢你们!” 稍复杂一点的回答:“不好意思!实在麻烦你们了,非常感谢!”...
查看>>