如何迭代所有 crontab 作业并打印作业的计划、命令和注释

我有以下 .py 代码


from crontab import CronTab

...

searchResultsList = cron.find_command('bar')

for eachJob in searchResultsList:

    print("Found this job", eachJob.command, eachJob.comment)

当我观察 时crontab -l,我可以看到 .py 正在找到它应该找到的作业,但是如何让 .py 程序访问每个作业的调度规则(*/10 2-4 0 4 *)?eachJob.rules类似或 的东西eachJob.schedule。


偶然的你
浏览 94回答 1
1回答

青春有我

问题访问每个 crontab 作业的 cron 表达式(计划)。解决方案有多种解决方案,具体取决于您接下来要使用 cron 表达式执行的操作。1. 在 Python 之外,使用grepcrontab -l | grep 'bar'结果会是这样的:0 10 * * * bash bar.sh 0 23 * * * bash bar.sh2. 在 Python 中,坚持使用python-crontab包eachJob2.1迭代searchResultsList时 可以打印:for eachJob in searchResultsList:     print("Found this job", eachJob)结果会是这样的:Found this job  0 10 * * * curl -X GET https://maker.ifttt.com/trigger/event/with/key Found this job  0 23 * * * curl -X GET https://maker.ifttt.com/trigger/event/with/key2.2 如果你想单独使用 'python-crontab' 访问调度规则,你可以这样做:for eachJob in searchResultsList:     print(eachJob[0], eachJob[1], eachJob[2], eachJob[3], eachJob[4])结果会是这样的:0 10 * * * 0 23 * * *
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python