Cronjob每30分钟运行一次

时间:2012-06-28 16:19:21

标签: shell time cron crontab

我想设置一个cronjob条目,每隔30分钟从9:00到18:00运行一个脚本,但我不希望它在18:30运行。脚本应该在9:00首次运行,最后一次在18:00运行。这可能吗?

2 个答案:

答案 0 :(得分:3)

是的,这是可能的; cron本身无法解决任务,但可以使用额外的shell命令:

*/30 9-18 * * * root [ $(date +%H%M) = 1830 ] || your_command
当且仅当当前时间不等于18:30时才会执行your_command

答案 1 :(得分:3)

您可能需要输入两个条目:

0,30 9-17 * * * /script
0 18 * * * /script

或者,您可以修改脚本以检查它是否接近18:30,如果是,则提前退出。