尝试将csv从一个目录复制到另一个目录时发生HDFS“无此文件或目录”错误

时间:2018-09-09 01:42:29

标签: hive hdfs hortonworks-sandbox

我正在使用Hortonworks Sandbox(不确定是否重要),并试图将csv文件从“ / user / root /”目录复制到“ / user / nyc_taxi /”目录,但是它给了我一个“没有这样的文件”或目录”错误。我非常确定名为“ yellow_tripdata_2016_01.csv”的csv位于“ / user / root /”目录中。

我使用Windows 10,以下是我在终端中编写的命令:

>sudo su - hdfs
>hdfs dfs -mkdir /user/root
>hdfs dfs -mkdir /user/nyc_taxi
>hdfs dfs -chown root:hdfs /user/root
>hdfs dfs -chown root:hdfs /user/nyc_taxi
>exit
>hadoop fs -put yellow_tripdata_2016_01.csv /user/nyc_taxi/

前6个命令没有问题。但是,当我运行最后一个时,终端返回“没有这样的文件或目录”错误。我还尝试通过运行以下命令来指定csv的实际路径:

hadoop fs -put /user/root/yellow_tripdata_2016_01.csv /user/nyc_taxi/ 

但是仍然显示相同的错误消息。

从下面的屏幕截图可以看出,csv文件显然位于“ / user / root /”目录中。 enter image description here

任何反馈/建议都将不胜感激!

1 个答案:

答案 0 :(得分:1)

放置命令在本地文件系统中的 yellow_tripdata_2016_01.csv文件中而不是在HDFS上查找

但是您的文件位于HDFS中,这就是您收到该错误的原因。

有关Hadoop -put/-cp/-mv命令的更多详细信息,请参见this链接。

如果要将HDFS文件复制/移动到另一个HDFS目录,请使用以下命令

将文件复制到另一个hdfs目录:

hadoop fs -cp /user/root/yellow_tripdata_2016_01.csv /user/nyc_taxi/

将文件移动到另一个目录:

hadoop fs -mv /user/root/yellow_tripdata_2016_01.csv /user/nyc_taxi/