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