Unix 在AIX7.1中,Cron作业在错误的时间运行

Unix 在AIX7.1中,Cron作业在错误的时间运行,unix,cron,aix,Unix,Cron,Aix,我已将cronjob配置为每月第一个星期一上午8:40运行,如下所示 40 08 1-7 * 1 /fs/test/testtime.sh 但它不仅在周一运行,它也在今天,也就是周二运行 有什么我遗漏的吗?来自crontab的手册页(我的重点): 注意:命令的执行日期可以由两个字段指定-月日和周日。如果两个字段都受到限制(即不是*),则当任一字段与当前时间匹配时,将运行该命令 例如,30 4 1,15*5将导致每个月1日和15日的凌晨4:30运行命令,加上每个星期五的 因此,在您的情况下,作业

我已将cronjob配置为每月第一个星期一上午8:40运行,如下所示

40 08 1-7 * 1 /fs/test/testtime.sh
但它不仅在周一运行,它也在今天,也就是周二运行


有什么我遗漏的吗?

来自crontab的手册页(我的重点):

注意:命令的执行日期可以由两个字段指定-月日和周日。如果两个字段都受到限制(即不是
*
),则当任一字段与当前时间匹配时,将运行该命令

例如,
30 4 1,15*5
将导致每个月1日和15日的凌晨4:30运行命令,加上每个星期五的

因此,在您的情况下,作业在每个月的前七天中的每一天运行,再加上每个星期一

通过在命令中添加
条件,而不是依赖时间规范中的
条件,您可以执行您想要的操作,例如:

40 08 1-7 * * test $(date +\%u) -eq 1 && /fs/test/testtime.sh

这将在所有这些天(每个月的前七天)运行实际的cron作业,但负载(脚本)仅在星期一运行。

来自crontab的手册页(我的重点):

注意:命令的执行日期可以由两个字段指定-月日和周日。如果两个字段都受到限制(即不是
*
),则当任一字段与当前时间匹配时,将运行该命令

例如,
30 4 1,15*5
将导致每个月1日和15日的凌晨4:30运行命令,加上每个星期五的

因此,在您的情况下,作业在每个月的前七天中的每一天运行,再加上每个星期一

通过在命令中添加
条件,而不是依赖时间规范中的
条件,您可以执行您想要的操作,例如:

40 08 1-7 * * test $(date +\%u) -eq 1 && /fs/test/testtime.sh

这将在所有这些天(每个月的前七天)运行实际的cron作业,但负载(脚本)将仅在星期一运行。

应该可以。。。因为“40081-7*1/fs/test/testtime.sh”意味着它在一个月的每一天从1点到7点以及周一的08:40运行。确保没有其他cronjob同时运行。你能用“crontab-l”粘贴结果吗?应该可以。。。因为“40081-7*1/fs/test/testtime.sh”意味着它在一个月的每一天从1点到7点以及周一的08:40运行。确保没有其他cronjob同时运行。你能用“crontab-l”粘贴结果吗?我能知道test这个词指的是什么吗?可以用其他词代替吗?项目名称可能是?@Ong,
test
是一种测试特定条件的方法,因此,不,它不能用任意单词替换。请问test是指什么?可以用其他词代替吗?项目名称可能是?@Ong,
test
是一种测试特定条件的方法,因此,不,不能用任意单词替换它。