需要每天通过 cron 作业调用一个 shell 脚本,看看是否是第 20 天,它应该发送一封邮件
答案1
你总是可以这样做(假设 GNUdate
和bash
/ ksh93
/ zsh
):
o=$(date +%::z)
o=${o:0:1}$((10#${o:1:2} * 3600 + 10#${o:4:2} * 60 + 10#${o:7}))
[ "$((($(date +%s) $o) /(24*60*60) % 20))" -eq 0 ] || exit
mailx -s subject [email protected] << EOM
Hiya
EOM
这个想法是计算自 1970 年 1 月 1 日以来的天数(获取并应用 UTC 偏移量的第一部分),然后退出,除非该数字是 20 的倍数。