源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

shell遍历目录处理特定目录的脚本代码

  • 时间:2020-09-26 10:16 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:shell遍历目录处理特定目录的脚本代码
需求:删除文件,目录结构为:ip/年份/月份,每个人都有一份这样的目录现需要删除2012年以前的所有文件,2012年以后的删除特定月份。 本来想用find,结果发现这些文件time(a,m,c)记录已经不是当初生成的。 没办法只好想了个土办法去遍历,哪位有好的方法,欢迎告知。
[u]复制代码[/u] 代码如下:
#!/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
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部