20日ごとにメールを送信するシェルスクリプト

20日ごとにメールを送信するシェルスクリプト

シェルスクリプトは毎日クローン操作で呼び出され、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の倍数でない限り終了することです。

おすすめ記事