求助,查找文件夹,若文件夹大于某一值,则删除文件夹中的文件,如何实现

sh/bash/dash/ksh/zsh等Shell脚本
回复
zuiqiangzhe
帖子: 126
注册时间: 2012-04-06 15:55

求助,查找文件夹,若文件夹大于某一值,则删除文件夹中的文件,如何实现

#1

帖子 zuiqiangzhe » 2015-10-21 12:49

用du -sm * 查找出文件夹的大小,以M为单位,大于100M,则删除文件夹中的内容,如何实现
头像
九天星
帖子: 1440
注册时间: 2007-07-14 20:45

Re: 求助,查找文件夹,若文件夹大于某一值,则删除文件夹中的文件,如何实现

#2

帖子 九天星 » 2015-10-22 16:07

大于100M的文件夹太多,而且很多是系统文件夹,不能删的,我估计你是想写大于100M的文件,可以用以下脚本实现。
写个脚本,用IF THEN就可以完成!

#/bin/bash
for filename in `ls`
do
if test -d $filename
then b=100MB
else
a=$(ls -l $filename | awk '{ print $5 }')
if test $a -eq 100MB
then rm $filename
fi
fi
done
onlylove
论坛版主
帖子: 5230
注册时间: 2007-01-14 16:23

Re: 求助,查找文件夹,若文件夹大于某一值,则删除文件夹中的文件,如何实现

#3

帖子 onlylove » 2015-10-22 22:56

楼上的,你用eq的话,是正好100mb的,大了小了都不管的
#include <stdio.h>
void main()
{
double world;
unsigned letter;
short stay;
long memories;
printf("I miss you.\n");
}
头像
九天星
帖子: 1440
注册时间: 2007-07-14 20:45

Re: 求助,查找文件夹,若文件夹大于某一值,则删除文件夹中的文件,如何实现

#4

帖子 九天星 » 2015-10-23 16:05

onlylove 写了:楼上的,你用eq的话,是正好100mb的,大了小了都不管的


你说的对,这个脚本定义的就是100,是大于还是小于让楼主自已去改吧!
回复