Support Questions

Find answers, ask questions, and share your expertise

How to copy files recursive from HDFS to a local folder?

avatar

The simple way to copy a folder from HDFS to a local folder is like this:

su hdfs -c 'hadoop fs -copyToLocal /hdp /tmp'

In the example above, we copy the hdp folder from HDFS to /tmp/local_folder

But we have a more complicated case. Let’s say under /hdp ( hdfs ), we have subfolders:


/hdp/folder1
/hdp/folder2
/hdp/folder3/folder_a
.
.
.


And in each sub folder we have files.

In that case, how to copy recursively only the files under /hdp to the local dir /tmp/local_folder?

Michael-Bronson
2 REPLIES 2

avatar
Expert Contributor

Hi @Michael Bronson,

We could suffix "*" (star) to the folder /hdp which copies only the files under /hdp recursively to local_folder.

hadoop fs -copyToLocal  /hdp/* /tmp/local_folder

avatar

but in case under /hdp we have also sub folders , then what we can do ?


Michael-Bronson