如何将文件夹中的所有文件移动到HDFS

时间:2016-12-08 10:26:00

标签: hdfs hadoop2

如果我:

hadoop fs -put /home/huser/Downloads/Weather2/* hdfs://hname:9000/data/Weather

我会得到

put: unexpected URISyntaxException

如果我:

hadoop fs -put /home/huser/Downloads/Weather2/ hdfs://hname:9000/data/Weather

这会将Weather2文件夹中的所有文件和文件夹本身移动到hdfs://hname:9000/data/Weather

我想要的是只将Weather2内的文件移动到hdfs://hname:9000/data/Weather而不将Weather2文件夹移动到文件夹

2 个答案:

答案 0 :(得分:0)

/home/huser/Downloads/Weather2重命名为/home/huser/Downloads/Weather 做:

hadoop fs -put /home/huser/Downloads/Weather hdfs://hname:9000/data/

答案 1 :(得分:0)

我不知道您是否找到解决方案。但是,当文件中有空间时,就会发生这种情况。 Linux无法识别其文件名中的空格。因此,如果要移动这些文件,首先必须删除这些空间,然后执行

hadoop fs -put /home/huser/Downloads/Weather2/* hdfs://hname:9000/data/Weather/

如果这可以解决您的查询,请对此评分,如果文件不包含空格,则可以提供更多信息。