2015-12-02 18 views
1

我需要幫助編寫腳本,針對以下情形UNIX腳本來檢查previos一天的文件大小和觸發郵件,如果不是今天的文件大小相匹配

需要比較前一天和當天,如果文件大小當前文件大小下降不到前一天的20%,或者如果當前文件大小爲0,那麼我應該觸發一個郵件,我們如何在Unix腳本中執行此操作?

-rw-r-----+ 1 599076 599076 3371531 Dec 1 08:15 engine.log 
-rw-r-----+ 1 599076 599076 86949 Dec 2 08:16 engine.log 
+0

你可以得到文件的大小並分配給變量,'以往= $(統計-c%S engine.log)'。現在比較'previous'和'current'來測試它們是否匹配。 – alvits

回答

0

獲取文件名,然後使用(du -m)命令獲取大小,然後相應地放置您的邏輯。

0

運行這一天一次:

set -- `ls -l engine.log` 
LIMIT=`expr $5 \* 5` 
read <yestersize && [ $LIMIT -lt $REPLY -o $5 -eq 0 ] && mail ... 
echo $5 >yestersize