我在Mapreduce中执行wordcount并在-copyToLocal中获得以下错误

时间:2015-04-20 05:39:17

标签: hadoop

hduser@hduser:~$ hdfs dfs -ls /output1

这是我执行的命令     找到2项     -rw-r - r-- 1 hduser supergroup 0 2015-04-20 10:40 / output1 / _SUCCESS     -rw-r - r-- 1 hduser supergroup 0 2015-04-20 10:40 / output1 / part-r-00000

但是我已经在我的hduser中出现了一个部分-r-00000,所以它给出了以下错误。是否有任何方法可以看到我的字数而无需应对本地

hduser@hduser:~$ hdfs dfs -copyToLocal /output1/part-r-00000 .copyToLocal: `part-r-00000': File exists

2 个答案:

答案 0 :(得分:0)

  

hduser @hduser:〜$ hdfs dfs -copyToLocal / output1 / part-r-00000 .copyToLocal:`part-r-00000':文件存在

copyToLocal的语法是hdfs dfs -copyToLocal /hdfs/file/to/be/copied /local/filesystem/path

在终端试试这个:

sudo mkdir /usr/new
sudo chmod -R 777 /usr/new
hdfs dfs -copyToLocal /output1/part-r-00000 /usr/new/part-r-00000
  

hduser @ hduser:〜$ hdfs dfs -ls / output1   共找到2项-rw-r - r-- 1 hduser supergroup 0 2015-04-20 10:40 / output1 / _SUCCESS -rw-r - r-- 1 hduser supergroup 0 2015- 04-20 10:40 / output1 / part-r-00000

-rw-r--r-- 1 hduser supergroup 0 2015-04-20 10:40 /output1/part-r-00000中,值0表示文件part-r-00000为空。从HDFS复制空文件时,只能在本地文件系统中获取空文件。

答案 1 :(得分:0)

以下指令将其存储在系统的tmp目录中。

sudo -u hdfs hdfs dfs -copyToLocal /output1/part-r-00000 /tmp/