【发布时间】:2013-04-13 04:29:02
【问题描述】:
我有一个写入文件然后将该文件转储到数据库的脚本。我需要这个任务尽可能频繁地运行,但不要同时运行多个实例(否则它会将多余的东西写入同一个文件)。
我目前的做法是在 shell 脚本中检查文件是否存在,如果存在,我退出脚本。在每个脚本结束时,它会删除文件。
这在 95% 的情况下都有效。但是,如果服务器重新启动(这种情况经常发生),正在写入的文件将保留,之后每次调用脚本时它都会退出,因为该文件已经存在。
什么是解决这个问题的好方法?
【问题讨论】:
-
每次重新启动时在 crontab 上安排文件审查怎么样?这是
@restart条件 -
见this question,简而言之,这几乎就是你的状况