• shell-最近7天目录


     1 #采用将最近7天的日期放入到数组中,遍历整个目录,将这7天的目录连接成一个字符串paths。
     2 #注意:    1.日期目录里面的文件只是做了简单的以part开头的匹配。
     3 #        2.path路径是日期的上一层,以/结尾
     4 #        3.将以下部分放到原来脚本的最上面
     5 #        4.paths是拼接的字符串结果,${paths%?}是去除末尾","的结果
     6 
     7 #原始数据文件路径(日期目录的上一层)
     8 path=/home/xwtech/temp/
     9 
    10 # 1.将最近7天的日期放入到数组
    11 i=0
    12 while [[ i -lt 7 ]] ; do
    13     datearray[i]=`date -d "-${i} day" +"%Y%m%d"`
    14     let i++
    15 done
    16 
    17 cd $path
    18 
    19 #判断目录结构(由8为数字组成,后面会判断该目录是否在日期数组中,so 没有做完全的日期判定),拼接字符串
    20 for dirname in `ls | grep -E "([0-9]{8})"`
    21 do
    22     if [[  "${datearray[@]}" =~ ${dirname} ]]
    23     then
    24         # 匹配以part开头的文件
    25         for file in `ls ${dirname} | grep -E "part-*?"`
    26         do
    27             paths=${paths}${dirname}"/"${file}","
    28         done
    29     fi
    30 done
    31 # ${paths%?} 就是去除最后一个","的结果
    32 echo ${paths%?}
  • 相关阅读:
    昨天
    独一无二
    参加婚礼
    好好说话
    叶问4
    争吵+侦探成旭
    慢慢来
    cs go
    附3、Storm课程学习整体思路及问题 ---没用
    7、kafka知识总结
  • 原文地址:https://www.cnblogs.com/husky/p/6599982.html
Copyright © 2020-2023  润新知