tarFolder='tar'
#保留文件数
ReservedNum=2
FileDir=./$tarFolder
date=$(date "+%Y%m%d-%H%M%S")
# 获取副本数量
FileNum=$(ls -l $FileDir | grep ^- | wc -l)
env="prod"
# 统计当前文件夹下文件的个数
# 只保留PROD下副本数量为最新的 3个
if [ -n $1 ] && [ "$1" == "$env" ] && [ -d $tarFolder ]; then
echo '---prod---'
while (($FileNum > $ReservedNum)); do
OldFile=$(ls -rt $FileDir | head -1)
echo $date "Delete File:"$OldFile
rm -rf $FileDir/$OldFile
let "FileNum--"
done
else
echo '---dev---'
fi
结果如下: