shell按阈值删除旧文件

阅读 85

2022-01-05


#!/bin/sh
#need_delete_size 要删除的文件的阈值大小 单位K
#没有指定文件夹 默认是当前文件夹下 

need_delete_size=60000
while [ 1 ]
do
	file_size=$(du -sBK ./ | awk "{print $1}")
	echo "file size is ==> ${file_size}"
	file_size=$(echo ${file_size/K/})
	file_size_number=`echo $file_size | tr -cd "[0-9]"`
	if [ ${file_size_number} -lt ${need_delete_size} ]
       	then
		echo "There are no files to delete ==> "
		break
	fi
	echo "file size gt ==>  ${need_delete_size}K need delete"
	echo "file name is ==>" ls -ltr | grep "^d" | awk '{print $9}' | head -1
	ls -ltr | grep "^d" | awk '{print $9}' | head -1| xargs rm -rf
	echo "delete success ==>"

done

精彩评论(0)

0 0 举报