shell脚本删除超过指定大小的日志文件

#shell脚本删除超过指定大小的日志文件
执行方式:sh 脚本名称 要删除的文件绝对路径 文件大小
例如:sh /work/sh/timing_to_deleted_file.sh /tmp/asyn_game_channel.log 10 >> /work/sh/timing_to_deleted_file.log

#!/bin/sh

filename=$1  #输入要删除的文件带绝对路径
size=$2      #输入文件删除的临界值,以G为单位
checkfilesize()

{

       time=$(date "+%Y-%m-%d %H:%M:%S")   #获取当前系统时间


        if [ ! -f "$filename" ]                                     #没有文件则创建文件

        then

              touch $filename

              echo "touch successful" >> /tmp/timing_to_deleted_file.log

          fi

         filesize=`ls -l $filename | awk '{ print $5}'`                       #获取文件本身大小
	 echo "文件大小为:"$filesize >> /work/sh/timing_to_deleted_file.log  #输出文件大小

          maxsize=$((1024*1024*1024*$size))                                        #最大内存10G

          if [ $filesize -gt $maxsize ]                               #判断文件是否大于某个内存大小,

          then

                  rm  $filename  #把文件删除
		touch $filename  #创建文件
		echo "删除文件的时间为:"$time "文件名为:" $filename >> /work/sh/timing_to_deleted_file.log      #将获取的系统时间追加在文件中
		echo "---------------------------------------------" >> /work/sh/timing_to_deleted_file.log
          else

                echo $time":本次执行该文件"$filename"未达到指定大小" >> /work/sh/timing_to_deleted_file.log      #本次执行该文件未达到指定大小
		echo "---------------------------------------------" >> /work/sh/timing_to_deleted_file.log
           fi
}

checkfilesize
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值