shell实现错误字符串/文件创建验证

时间:2012-12-10 16:31:06

标签: bash

我有一个用sh / bash编写并且每天运行的脚本,并检查所有操作系统的SCSI / FC多路径。如果脚本生成特殊的“错误”字符串并将其发送到syslog,我们的监控程序将其拾取并为操作员生成事件记录。我需要向脚本实现为syslog生成这个特殊的“错误”的能力,不是每天都存在错误,而是每周一次。所以,我需要实现这种类型的逻辑: 第1天:存在错误 - 生成特殊的“错误”字符串并将其发送到syslog,例如创建具有创建日期的临时文件 第2天:存在错误 - 检查临时文件创建日期,如果日期少于7天,请不要生成特殊的“错误”字符串,也不要将其发送到syslog。 ...... 第8天:存在错误 - 检查临时文件创建日期,如果日期超过7天,则向syslog生成特殊的“错误”字符串。

实施此类内部验证的最佳方式是什么?

1 个答案:

答案 0 :(得分:2)

我想到的是:

  1. 检查错误情况
  2. 执行find "error_file_dir" -mtime 7 -name "error_file"并检查错误代码以查看是否找到了文件编辑:检查返回的行数而不是错误代码
  3. 如果找不到该文件,请记录错误,然后将错误写入error_file_dir / error_file(覆盖文件,如果有的话)
  4. 这里的关键是要查找的mtime参数。它将确保只有在过去7天内修改过文件才会返回该文件,在这种情况下,您不会记录错误。