查找计划在将来的某个日期/时间运行的cron作业X


9

有没有一种方法可以“查询” crontab来查找哪些cron作业在某个任意日期/时间或某个时间范围内运行?

例如,确定哪个将在今天的14:00和16:00之间的某个时间运行,将在下个星期六的10:00或每个星期日运行?

计划了很多工作,因此手动阅读所有crontab并不是一个真正的选择。


解决方案之一是制作时间戳记,并将其重定向到您的监视系统,在这种情况下,您可以进行脚本/检查以实际检查执行了什么以及何时执行
klerk

@klerk:时间戳?在cronjobs中吗?我无法修改它们,因为它们太多了,所有这些都不属于我,而是其他用户。
2014年

@klerk:我的意思是linux应该何时运行作业?在某种程度上如何存在某种可以解释crontab条目的代码。
2014年

2
@klerk似乎很清楚。OP试图回答这个问题:“明天下午3点,crond将运行哪些作业?” 以及该主题的几种变体。
derobert 2014年

1
@Jim您可能会在这里找到想要的东西:stackoverflow.com/a/137173/2100043- 从那里开始,您只需要使用命令行过滤工具来发挥创意即可。
BriGuy 2014年

Answers:


2

我找到了一个名为cronviz的工具,它将为您显示crontab条目的图形表示。

摘抄

您有一个问题:在凌晨1点至4点之间,导致应用程序服务器性能出现问题的原因,cron作业似乎是罪魁祸首。

自然地,您盯着crontab来了解在那几个小时中正在运行的内容。

现在您有两个问题。

随着时间的流逝,cron作业会累积成无法穿透的,不透明的文本。试图全面了解所有不同的运行时间,并在其中找到模式可能非常困难。Crontabs是供计算机解释的,而不是人类。

屏幕截图示例

    SS#1

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.