注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

linux++的博客

LINUX+ORACLE+NBA+GAME=NET

 
 
 

日志

 
 

monitor file size,and backup it.  

2009-02-02 12:19:32|  分类: linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

#!/bin/sh
########################################################################
# Desc: thie shell script is used to monitor file size,and backup it.
#########################################################################

#Function: process the backup action.

backup()
{
AVASIZE=`df  .|grep -v Filesystem|awk -F" " '{print $4}'`
AVASIZE=`expr $AVASIZE \* 1000`

#echo $1

for F in $1
do
 MBASENAME=`basename $F`
 MDIRNAME=`dirname $F`
 CURFILESIZE=`ls -l $F|grep -v total|grep -v "log.[0-9]\{4\}"|awk -F' ' '{print $5}'`
 #***** IF FILTING SOME NOT VALID FILE,YOU MUST NOT COMPARE BELOW ******
 if [ "$CURFILESIZE" == "" ];then
   continue;
 fi
 echo $AVASIZE $CURFILESIZE $MBASENAME $MDIRNAME
 if [ $CURFILESIZE -lt $AVASIZE ];then
  echo "--- `date +%Y-%m-%d' '%T`: FOUND SO BIGGER FILE,BEGIN BACKUP ---" >> monitor_file_size.log
  cp $F $F".`date +%Y_%m_%d_%H_%M_%S`"
  #rm -f $F
  >$F 
  echo " File $F BACKUP TO $F.`date +%Y_%m_%d_%H_%M_%S`, File Size: $CURFILESIZE" >> monitor_file_size.log

  echo "--- `date +%Y-%m-%d' '%T`: END OF BACKUP ---" >> monitor_file_size.log
  echo "" >> monitor_file_size.log
 else
  echo "WARNING: The partition has not enough space !"
 fi
done;
}

if [ $# -ne 2 ]; then
 echo "Usage: `basename $0` MONITOR_PATH MONITORFILE_SIZE(Mbytes)"
 exit 0
fi

MPATH=$1
MSIZE=`expr $2 \* 1024`


backup "`find $MPATH -type f -size +$MSIZE -print`"

  评论这张
 
阅读(90)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017