繁体   English   中英

Shell脚本-日志文件未更新

[英]Shell script - Log file not updating

如果2个日志文件未更新,我试图获取我的Shell脚本来提醒我。 我正在尝试获取当前大小...请等待10秒钟,如果文件没有更改大小,请发送电子邮件警报。 任何帮助将是巨大的!

我的代码:

#! /bin/bash
logFiles="lg.log lg2.log"
logLocation="/user/file/logs"
sleepTime=10
subject="issue - file not updated"

failMessage="::no recent updates "
successMessage="OK"
not_updated_time=0
arr=($logFiles)
arrlen=${#arr[@]}
arrcount=()
date
for ((count=0; count<arrlen; count++)) ; do
    arrcount[$count]=`ls -l  $logLocation${arr[$count]}  |awk '{print $5}'`
    echo "${arr[$count]} Original size :: ${arrcount[$count]}"
done
echo
while [ "e" == "e" ] ; do
    sleep $sleepTime
    date
    for ((count=0; count<arrlen; count++)) ; do
        nc=`ls -l  $logLocation${arr[$count]}  |awk '{print $5}'`
        echo -n "${arr[$count]} "
        if [ $nc == ${arrcount[$count]} ] ; then
        echo 'error' | mailx -s "issue" cat@gmail.com
        else
            arrcount[$count]=$nc
            echo $successMessage
   not_updated_time=0
        fi
    done
    echo
done

修复了逗号问题,脚本仍然无法使用。 有任何想法吗?

初始化logLocation或将变量用作$logLocation${arr[$count]}时似乎都出现了/缺失。

请尝试以下两种更改之一:

logLocation="/user/file/logs/"

要么:

`ls -l  $logLocation/${arr[$count]}  |awk '{print $5}'`

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM