Unix的Crontab作业时间冲突?

我在Crontab作业中有以下两个条目,这些条目从上午10点开始。

工作#1

0,20 10 * * 1-5 ./run_program_A

工作#2

0,20 10 * * 1-5 ./run_program_B

在10:15,我检查了我的日志文件,只有程序B运行。 程序A似乎从未被解雇。

如果我将节目A的开始时间设定为10:30,它将被启动。 我对Crontab并不是很熟悉,所以我希望你能对此有所了解。 我是否必须确保所有的工作不是同时进行的?

先谢谢你。

cron当然不会有这样的限制。 问题在于别的地方(例如,两个程序使用的锁)。

一些随机的事情可能有助于追踪这个问题:

  • 检查/ var / log中的cron日志
  • 确保你从cron输出的某处(cron文件的拥有者)得到邮件,因为这可能有一些有趣的线索
  • 将“./run_program_A”replace为“echo ./run_program_A”,只是为了看看它是否被踢掉了
  • 放置“echo”程序在run_program_A中运行“| mailx -s program_A [email protected]”以validation它正在运行

不,你不应该避免冲突, cron应该完全适应同时开始的工作,否则重叠。

是否有可能两个脚本都写入同一个日志文件,例如一个脚本覆盖另一个脚本的输出?

检查/ var / log / cron中的错误消息。 “program_B”的调用方式肯定有问题。

20 10 * * 1-5 ./run_program_A> run_program_A.log

在10:20之后检查日志文件

ls -ltr run_program_A.log

如果该文件是在10:20生成的问题在于脚本run_program_A而不是在cron

为cron帮助

http://scripterworld.blogspot.com/2009/07/unix-crontab-configuration-with.html