今天应知道里的一个问题写了个脚本
他的问题如下
- 比如我现在有个目录是/home/wind,然后/home/wind目录下有很多子目录,比如q01,q02,ww,xmmk,ju,qq .....等等,然后每个子目录下都有个相同的目录www,然后我现在想写个脚本,只要运行这个脚本,每个/home/wind/*/www目录下的所有文件的总大小大于20M,就将这个/home/wind/*/www目录清空,这个脚本要怎么写,万分感谢!!!
代码如下:
首先用find查找出/home/wind下名字为www的目录
遍历找到的目录,用du获取各个目录的大小和20M做对比,大于20M的做删除操作
- let minsize=20*1024*1024 #20M
- find /home/wind -name www -type d |while read dirpath
- do
- dirsize=`du $dirpath --max-depth=0|cut -f 1`
- echo "'$dirpath' size=$dirsize"
- if [ "$dirsize" -gt "$minsize" ]
- then
- echo "rm -rf $dirpath/*"
- #rm -rf $dirpath/*
- fi
- done
本文转自yifangyou 51CTO博客,原文链接:http://blog.51cto.com/yifangyou/611652
,如需转载请自行联系原作者