在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
需求:删除文件,目录结构为:ip/年份/月份,每个人都有一份这样的目录现需要删除2012年以前的所有文件,2012年以后的删除特定月份。 复制代码 代码如下: #!/bin/bash cd /home/wanggy/rmfile/ ls -l | grep ^d | awk '{print $NF}' >/home/wanggy/tmp cat /home/wanggy/tmp |while read dir1 do cd $dir1 echo "第一级目录 $dir1" ls -l | grep ^d | awk '{print $NF}' >/home/wanggy/tmp1 cat /home/wanggy/tmp1 |while read dir2 do echo "二级目录 $dir2" cd $dir2 #对大于2012年的目录再判断,小于则直接删除。 if [ $dir2 -gt 2011 ];then ls -l | grep ^d | awk '{print $NF}' >/home/wanggy/tmp2 cat /home/wanggy/tmp2 |while read dir3 do #9月份之前的删除" if [ $dir3 -lt 09 ];then rm -rf $dir3 fi done else echo "删除2012前的目录:$dir2" rm -rf $dir2 fi #返回上一级 cd .. done #返回上一级 cd .. done |
请发表评论