【发布时间】:2019-03-25 23:25:38
【问题描述】:
我在 python 中编写了一个脚本来执行 FTP 传输,它将每分钟在 crontab 中运行。该脚本查询 mysql 数据库并使用 croniter 库翻译 cron 语言。如果当前日期和时间与编程的日期一致,将执行 ftp 事务。
它似乎可以正常工作,除非编程是 cron 是星号中的分钟和小时。加上日期好像没有问题。
crontotime 函数在变量“programmed”中接收以 cron 语言编程的时间和日期:“* * * * *”或“05 17 * * *”,并将其转换为日期和时间。
谢谢。
def crontotime(self,programada):
crontask = croniter.croniter(programada)
nextcrontask = crontask.get_next(datetime.datetime).strftime("%Y-%m-%d %H:%M")
return nextcrontask
结果:如果没有定义分钟和小时,则会出现错误
========================================================
Now: 2019-03-25 16:56
Scheluded: #* 16 * * *# 2019-03-25 16:00
========================================================
Now: 2019-03-25 16:56
Scheluded: #56 16 * * *# 2019-03-25 16:56
========================================================
Now: 2019-03-25 17:05
Scheluded #* * * * *# 2019-03-25 16:06 ERROR
========================================================
Now: 2019-03-25 17:05
Scheluded: #05 17 * * *# 2019-03-25 17:05
========================================================
【问题讨论】:
-
什么是打印
ERROR?调用crontotoime的代码在哪里?