当前位置: 首页 > 知识库问答 >
问题:

从crontab中删除过期的cron作业

穆锋
2023-03-14

我的产品需要对用户发送给其他用户的每条消息进行cronjob处理。此cronjob被添加到服务器上的crontab中。一切正常。现在,一旦任务完成,有没有办法从crontab中删除过期的cronjob条目?

由于消息数量巨大,我的 crontab 不断增长,因此我想清理旧的作业条目。任何巧妙的方法来实现它?

共有1个答案

通和裕
2023-03-14

至少在大多数Linux发行版中,有一个crontab命令允许您获取和设置用户crontab的内容。您可以这样使用它:

crontab -l > myfile
... edit the file (removing the entry)
crontab myfile

然而,这是笨重且容易出错的。更好的方法是将您的作业包装在一个脚本中,该脚本检查一个条件(例如一个标志文件)以决定是否运行底层逻辑并操作这个标志文件。

 类似资料:
  • 在web.xml中,my的被设置为120(即2小时)。Hazelcast地图名为SessionMap,其TTL为24小时。这里的想法是,我们希望结束2小时不活动的会话,但如果有人持续使用应用程序,我们希望让会话继续最多24小时。 问题是,如果我让一个会话处于空闲状态,Tomcat将在2小时后终止会话,但会话仍将保留在Hazelcast映射(SessionMap)中,直到TTL。当会话在Tomcat

  • 问题内容: 我最近(通过GUI)从Jenkins删除了2个工作。之后,当我登录到奴隶时,我仍然看到那两个作业的工作空间。这是正常现象吗? 笔记: Jenkins主服务器和从服务器都在Windows环境上运行。 主服务器在Windows Server 2003上运行,从服务器在Windows Server 2008 R2上运行。 Jenkins版本是1.509.2 问候,贝尼尔 问题答案: 不幸的是

  • 问题内容: 是否可以使用PHP创建,编辑和删除crontab作业? 我知道如何列出Apache用户的当前crontab作业: 但是如何用PHP添加cron作业呢?’crontab -e’只会打开一个文本编辑器,您必须在保存文件之前手动编辑条目。 以及如何使用PHP删除cron作业?同样,您必须通过’crontab -e’手动执行此操作。 使用这样的作业字符串: 如何使用PHP将其添加到cronta

  • 我不明白这个问题的答案:“< code>cron和< code>crontab之间有什么区别。”它们都是调度程序,一个执行文件一次,另一个定期执行文件,还是< code>cron调度一个作业,然后< code>crontab将它们存储在表或文件中以供执行? 提及的维基页面: Cron由crontab(Cron表)文件驱动,crontab文件是一个配置文件,它指定了在给定的计划中定期运行的shell

  • 问题内容: 我使用以下crontab记录来每天备份数据库: 我想添加另一个crontab记录,该记录将删除早于一个月的数据库转储。 有什么想法吗? 问题答案: 只需创建另一个cron: 它将查找所有早于30天的备份并将其删除。

  • 问题内容: 我想知道如何在日期过期时自动删除记录,我正在创建机票预订网站。我需要从mysql数据库中删除所有过期的航班详细信息。我读过可以使用cron的地方,但我不知道该怎么做。脚本的任何帮助将非常有帮助。 问题答案: 您可以尝试使用MySQL : 注意 ,需要在服务器上启用MySQL Event Scheduler : 更多信息在这里。