[英]Scheduling a cron job in python to run a python script every time at 1 and 31 minutes through APSCHEDULER
我必须每 1 分钟和 31 分钟运行一次 AP 调度程序 cron 作业。 例如,如果它在 10.01 运行并且应该在 10.32 再次运行,那么它应该在 11.03 和 11.34 再次运行,并且除了周六和周日之外的所有日子都应该重复。 我试过这个,但它不起作用
我该怎么做
sched.jobs(jobs,'cron',day_of_week='mon-fri', hour=*, minute=*\31*)
以上不是有效的 Python,可能无法运行。
*
不带引号被解释为乘法运算符,但它位于非法位置。*/31 * * * Mon-Fri
表示在可被 31 整除的分钟内运行。您想要的 cron 表达式是1,31 * * * 1-5
jobs
职能。 首先,您需要定义一个要调用的函数(我不确定表达式中的jobs
是单个函数还是函数集合,但它应该只是一个函数):
def job():
print("job starting")
call(['touch', 'emptyfile'])
然后,使用add_job
(不是jobs
)添加它
// create scheduler using a subclass of BaseScheduler
scheduler = BackgroundScheduler()
scheduler.configure(timezone='utc')
// cron would look like 1,31 * * * 1-5
scheduler.add_job(job, 'cron', day_of_week='1-5', hour='*', minute='1,31')
scheduler.start()
可以参考https://crontab.guru/和https://apscheduler.readthedocs.io/en/stable/userguide.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.