Shell编写清除日志脚本
Shell编写清除日志脚本
一、shell编写清除日志脚本,清除日志并保留五个最新日志
while [1]
do
date="$(date +%Y%m%d)"
ReservedNum = 5#保留文件数量
rm_file_dir="/app/hfis/log"
cd $rm_file_dir #进入文件
RootDir=$(cd $(dirname $0);pwd)#获取当前路径
FileNum=$(ls -l|grep hfis-app.log.|wc -l)#查找文件数量
OldFile=$(ls -trl hfis-app.log.* |head -1)#找出最早的文件,只显示一条
echo $OldFile#显示最早的文件
if[$RootDir == $rm_file_dir];then#判断两个目录是否一致
while(($FileNum>$ReservedNum))#文件数超过数量才执行
do
echo "Delete File:"$RootDir'/'$OldFile #打印要删除的文件
rm -f $RootDir'/'$OldFile #删除文件
let "FileNum--"
OldFile = $(ls -trl hfis-app.log*|head -1)#更新最早文件
done
else
echo "error file path" #错误打印,请确认文件目录
fi
sleep 300
done