如何从特定时间开始无限地每1小时执行一次cron作业?

时间:2018-01-22 09:48:10

标签: linux cron at-command

我希望使用以下模式从上午6:30开始每1分钟无限期地执行一次cron作业:

30/1 6 * * *

但是cron在上午6:59停止,之后再也没有执行过。

我应该将模式设为30/1 6-0 * * *。但我担心在上午12点首次出现后可能不会调用cron。

那么,以下模式是否会解决问题? 30/1 6-* * * *

1 个答案:

答案 0 :(得分:2)

每1分钟运行一次cron。对于这样一个高频率的cron工作,人们应该仔细弄清楚竞争条件。

 $ cat ./my1min-cron
 */1 * * * * root /path/to/some/script &> /path/to/some/log

 $ chmod 644 ./my1min-cron

使用at将其放置在下午6:30。例如,

 # Create a script that will copy the cron file to /etc/cron.d/
 $ cat ./putcronscript.sh
 cp -vf ./my1min-cron /etc/cron.d/my1min-cron &> ./copycronscript.log

 # Use at to put the cron script in place at 6:30 AM Tuesday. This is onetime operation.
 $ at -f ./putcronscript.sh 6:30 AM Tue

 # or
 $ at -f ./putcronscript.sh 6:30 AM tomorrow