文件new.txt可以肯定;我不知道为什么当我试图进入hdfs目录时,它说文件不存在。
deepak@deepak:/$ cd $HOME/fs
deepak@deepak:~/fs$ ls
new.txt
deepak@deepak:~/fs$ cat new.txt
an apple a day keeps the doctor away
deepak@deepak:~/fs$ hadoop fs -cp $HOME/fs/new.txt $HOME/hdfs
cp: File does not exist: /home/deepak/fs/new.txt
deepak@deepak:~/fs$
PS:我已经创建了一个名为hdfs的目录:
deepak@deepak:~/fs$ hadoop fs -mkdir $HOME/hdfs
mkdir: cannot create directory /home/deepak/hdfs: File exists
答案 0 :(得分:9)
cp 。但是您打算将数据从本地FS复制到HDFS。要将数据从本地FS复制到HDFS,您可以使用 put 或 copyFromLocal 。
如果您真的希望使用 cp 进行此操作,则必须指定完整路径以及方案。说,
hadoop fs -cp file:///Users/miqbal1/date.txt /
cp 默认情况下假设该方案为 hdfs://
但是当你有放和 copyFromLocal 时,为什么要这样做?
HTH
答案 1 :(得分:2)
要将文件从本地复制到hdfs,应使用以下命令
hadoop fs -copyFromLocal $HOME/fs/new.txt $HOME/hdfs
对于cat hdfs文件,您可以使用以下命令
hadoop fs -cat $HOME/hdfsnew.txt