寻找一种方法来确保我的shell脚本在使用crontab运行时只运行一次

时间:2014-01-21 10:59:20

标签: bash shell cron

我需要连续扫描日志文件并捕获异常并警告已注册的电子邮件用户有关错误的信息。 为了做同样的事情,我在目标日志文件上做“尾巴”并捕获异常。这种情况正在发生。

现在我需要将它发送到我需要执行相同任务的多个服务器上。我还有一些其他脚本定期运行。我已经在crontab中配置它们并且运行正常。

我正在寻找在cron上配置此日志脚本的方法。 让我说我配置它每隔一小时运行一次。 但是我需要确保仅在脚本尚未执行时才触发脚本执行。

我找到了以下方法来确保相同: 1)仅当标志文件不存在时才在脚本开头创建标志文件。如果标志文件已存在,则退出状态为1的脚本,否则执行实际代码。 2)使用鸡群

请根据我的要求建议哪种方法更好。 是否可以使用cron或者我是否需要将脚本置于启动状态(我不想在启动时配置脚本,因为我需要进一步的权限)

我为我的问题的长寿道歉。

1 个答案:

答案 0 :(得分:0)

您还可以在ps -aux的结果中搜索您的脚本名称。如果您发现它已列出,请终止。