シェルスクリプトで、ファイルが判定日時より古かったらなにかをする

シェルスクリプト(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 を運営しています。
開発相談をお待ちしています。

アーカイブ