操纵CRON表达式

时间:2012-02-15 08:43:51

标签: java c++ time cron

我正在尝试在我的一个项目中使用cron,我需要在特定时间段内启用一些标志并再次禁用它。该标志可以位于文件中或共享内存中。

我对cron相当新,但我知道我们可以安排在任何特定时间开始使用cmd。因此,如果我想设置一个标志,我可以编写一个程序来读取文件或附加到共享内存更新标志并关闭它们并退出。但问题是在说X分钟之后应再次禁用该标志。

我认为有两个cron工作来完成这项工作会有所帮助。我们可以用不同的参数触发相同的cmd,我可以相应地交换标志。这是一个好方法吗?

如果是这样的话;我被困在操纵给定的cron表达式。如果我只有在一个(周期性)开始时间和标志需要激活的持续时间内交换标志的exp;有没有办法有效地将持续时间(以天/小时/分钟为单位)添加到现有的cron exp并创建一个新的exp?或者我是否需要编写相应的添加和调整字段的完整逻辑来实现它?

我有用Java和C ++编写的组件,可以访问这个cron exp。所以用这两种语言来做对我来说都没问题。现在我正在尝试使用C ++。

1 个答案:

答案 0 :(得分:1)

经典的crontab行

*/5 *   *   *   *   echo crontabfoo > /dev/null

标记了非活动的crontab行:

 # */5  *   *   *   *   echo crontabfoo > /dev/null

是的,只是一个普通的评论。如果它每5分钟运行一次,并且你在6分钟之后将它评论出来,它仍然有很短的机会跑两次,所以也许你想在不久的将来指定一个具体的时间。

相关问题