一定時間ログファイルにエントリがない場合に電子メールを送信するスクリプト

一定時間ログファイルにエントリがない場合に電子メールを送信するスクリプト

3時間以上ログファイルにエントリがない場合は、警告メールを送信できるスクリプトをどのように作成しますか?

答え1

少し複雑ですが動作します。

#!/bin/bash

now=`date +%s`
max_age=10800 # 3 hours in seconds

if [ $(($now - `stat -c '%Y' $1`)) -gt $max_age ]; then
    echo "file hasn't been updated in $max_age seconds"
fi

ファイル名を唯一の引数として使用してスクリプトを呼び出します。

関連情報