根据文件时间戳在HDFS中移动文件

时间:2018-12-03 11:13:32

标签: shell hadoop hdfs

我在HDFS中具有以下文件-

abc_20181203-010000

cde_20181203-020000

fgh_20181203-030000

每小时数据文件都会进入HDFS目录。要处理第二小时文件,输入的是01和02小时文件。要处理03小时文件,输入的是02和03文件,依此类推。我仅需要在另一个HDFS目录中移动/复制一次2小时的文件,即可进行进一步处理。我需要一个脚本,该脚本会将01和02文件移动/复制到另一个目录。 03文件应保留在源目录中。因此,下一个小时的文件进入时,即如果04进入..则需要移动03和04。

我已经开始使用脚本(本地),但是对于如何进行我一无所知。感谢任何指导。

input="/input"

for i in $input/*;do

fbname=$(basename "$i" | cut -d. -f1)
directory=$(basename "$fbname" | cut -d "-" -f2)
dateHourFile=$(basename "$fbname" | cut -d "_" -f2)

done
function Sort() {
    SortedList=$(echo $dateHourFile | sort -nu)
}
Sort
echo "$SortedList"

0 个答案:

没有答案