シェルスクリプトで、ファイルが判定日時より古かったらなにかをする
シェルスクリプト(Bash/Zsh)
2022-05-28 07:29 (3 years ago)

一定時間処理されていないタスクを判定して、mac でターミナルを開いた時にアラートを出すために書きました。
date -r <target-file-path> +"%s"
↑ファイルのUnixタイムスタンプ(エポック秒) が取得できるので、これで計算する。
#!/usr/bin/env zsh
# 前回の処理からしばらく経過していたらアラート
cd "$(dirname $0)" || exit
now=$(date "+%s")
file_timestamp=$(date -r <target-file-path> +"%s")
delta=$(($now - $file_timestamp))
threshold=$((86400 * 35))
# echo "delta = ${delta}"
# echo "threshold = ${threshold}"
if [ ${delta} -gt ${threshold} ]; then
echo "前回の処理から35日以上経過しています。"
echo "処理を行ってください"
fi
まだ評価がありません
著者は、アプリケーション開発会社 Cyberneura を運営しています。
開発相談をお待ちしています。
開発相談をお待ちしています。