Bash 如何检查Mailx是否在过去的时间段内使用?

Bash 如何检查Mailx是否在过去的时间段内使用?,bash,unix,mailx,Bash,Unix,Mailx,我有一份mailx声明作为shells scipt的一部分。它是条件声明的一部分,如果系统出现故障,它将每分钟发送一封电子邮件 有没有办法让mailx检查邮件是否在最后一个小时内发送,并且只在结果为false时发送 tail -1 "/location/of/file.txt" | mail -s "Warning" test@testing.com; 使用文件标记发送的时间。 e、 g 无需使用expr。使用(())和而不是[[]]和-gt@pizza谢谢,我希望不使用文件就能得到更优雅的解

我有一份mailx声明作为shells scipt的一部分。它是条件声明的一部分,如果系统出现故障,它将每分钟发送一封电子邮件

有没有办法让mailx检查邮件是否在最后一个小时内发送,并且只在结果为false时发送

tail -1 "/location/of/file.txt" | mail -s "Warning" test@testing.com;

使用文件标记发送的时间。 e、 g


无需使用
expr
。使用
(())
而不是
[[]]
-gt
@pizza谢谢,我希望不使用文件就能得到更优雅的解决方案。但这很管用。谢谢你的快速回复。
dowork() {
    tail -1 "/location/of/file.txt" | mail -s "Warning" test@testing.com;
    touch ./checked.txt
}
if [[ -f ./checked.txt ]] ; then
    if [[ $(expr $(date '+%s') - $(stat -c '%Y' ./checked.txt )) -gt 3600 ]]; then
            dowork
    fi
else
    dowork
fi