我正在搜索一个UNIX脚本来检查目录中的文件,如果文件存在,则必须将时间与当前时间戳进行比较。无论文件在目录中停留超过30分钟,用户都会收到一封通知电子邮件。
find命令的较新版本将允许这样的操作:
find . -cmin +30 | while read file ; do executeTooOldFile "$file" ; done
然而,你需要仔细考虑。如果你每分钟运行一次,那么直到文件被删除,用户每分钟都会收到一封电子邮件。也许你的测试应该是"-amin+30",然后你"触摸"文件(这会改变它的时间戳),这样你就不会再发送电子邮件30分钟了。
注意:"find"one_answers"touch"是系统命令,但"executeTooOldFile"将是您自己的脚本,其中包括当您发现文件太旧时应执行的操作。如果你有权访问"cron",那么你可以直接在其中调度find命令,但我会创建一个包含"find"的"master"脚本,并在cron中执行它。