linux shell 删除日志,Shell脚本 - 定制化删除目标文件(日志文件)

#!/bin/bash

#保留文件数,默认值

ReservedNum=5

#最大文件数,默认值

MaxNum=30

#要删除文件的,父级目录,需要修改

FileDir=../../build_debug/bin/tkserverlog/

if [ $1 ]; then

ReservedNum=$1

fi

if [ $2 ]; then

MaxNum=$2

fi

if [ $ReservedNum -lt 1 ]; then

echo "[ERROR] Param Error! Please input ReservedNum > 1"

exit

fi

if [ $ReservedNum -ge $MaxNum ]; then

echo "[ERROR] Param Error! Please input ReservedNum < MaxNum"

exit

fi

while true ; do

if [ ! -e "$FileDir" ]; then

echo  "Current File Folder Is Not Exist"

sleep 5s

continue

fi

FileNum=$(ls -l $FileDir|grep ^- |wc -l)

if [ $FileNum -gt $MaxNum ]; then

date=$(date "+%Y%m%d-%H%M%S")

while(( $FileNum > $ReservedNum))

do

OldFile=$(ls -rt $FileDir| head -1)

echo  $date "Delete File:"$OldFile

rm -rf $FileDir/$OldFile

let "FileNum--"

done

fi

sleep 10s    #定时检测时间

done

第一个参数是保留文件数,第二个参数是最大文件数,可以传入值修改

举例,新建一个shell文件,delete_logs_regular.sh,将上述代码复制进去,运行

./delete_logs_regular.sh  5  30

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值