hdfs删除超过7天的目录

时间:2016-05-27 04:01:10

标签: shell hadoop hdfs

我有档案目录结构 /archivedData/Mappings/Web/NOW/, 其中NOW是当前日期: NOW=$(date +"%Y%m%d%H%M")

我必须从hdfs删除超过7天的NOW个目录。

1 个答案:

答案 0 :(得分:1)

这可以通过awkdate命令实现,下面是shell脚本

#!/bin/bash
 hadoop fs -ls /archivedData/Mappings/Web/NOW/| while read path; 
 do
 dir_date=`echo $path | awk '{print $6}'`|cut -d'/' -f5
 purge_criteria=`date +"%Y%m%d%H%M" --date "7 days ago"`
        if [ $dir_date -lt $purge_criteria ]; then
            hadoop fs -rm $f
        fi
 done