Hadoop fs -get仅复制特定文件

Mat*_*t E 3 hadoop

有没有办法只复制特定文件,比如根据文件类型使用fs -get或fs -copyToLocal?注意:我希望这是递归的并遍历整个集群.

想出来但我不能回答我自己的问题.

这是我们如何做到的.刚写了一个快速的shell脚本.

mkdir /tmp/txt

    for F in `hadoop fs -fs hdfs://namenode.mycluster -lsr / | grep '/*.txt$' | awk '{print $NF}'; 
    do
       hadoop fs -fs hdfs://namenode.mycluster -copyToLocal $F /tmp/las/ 
    done
Run Code Online (Sandbox Code Playgroud)

Mat*_*t E 5

这是我们如何做到的.刚写了一个快速的shell脚本.

LOCAL_DIR=/tmp/txt
mkdir $LOCAL_DIR

for F in `hadoop fs -fs hdfs://namenode.mycluster -lsr / | grep '/*.txt$' | awk '{print $NF}'; 
do
   hadoop fs -fs hdfs://namenode.mycluster -copyToLocal $F $LOCAL_DIR 
done`
Run Code Online (Sandbox Code Playgroud)