前端之家收集整理的这篇文章主要介绍了
什么是在Bash中执行时间戳比较的最佳方式,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个警告脚本,我想阻止我的
垃圾邮件,所以我想设置一个条件,如果一个警报已发送,在最近一小时,不发送另一个警报。现在我有一个cron工作,每分钟检查条件,因为我需要在条件满足时
快速警告,但我不需要得到电子
邮件每个munite,直到我得到控制下的问题。什么是最好的
方法来比较时间在bash来完成这个?
到目前为止,最简单的是将时间戳存储为伪
文件的
修改时间。 GNU touch和date命令可以设置/
获取这些时间并执行日期计算。 Bash有测试来检查
文件是否比(-nt)更新,或者比(-ot)另一个更旧。
例如,如果最后一次通知是在一个多小时前发送通知,则只发送通知:
touch -d '-1 hour' limit
if [ limit -nt last_notification ]; then
#send notification...
touch last_notification
fi