使用以下命令
创建文件夹[LOAN_DATA] /my_work/hadoop-1.0.3/bin$hadoop fs -mkdir hdfs://masterNode:8020/tmp/hadoop-hadoop/dfs/LOAN_DATA
现在我们使用网址开启
目录/ tmp / hadoop-hadoop / dfs的内容显示LOAN_DATA
然后我想使用PUT或copyFromLocal将TXT文件中的一些数据存储到LOAN_DATA文件夹
put:未知命令
/ hadoop fs -put' /home/hadoop/my_work/Acquisition_2012Q1.txt' HDFS:// masterNode:8020 / TMP / Hadoop的的hadoop / DFS / LOAN_DATA
如何解决此问题?
答案 0 :(得分:7)
复制粘贴命令并使用它时,可能会发生此问题。这是因为文档中使用的字体(或字符集)发生了变化。
例如:
如果您复制/粘贴并执行命令 -
hdfs dfs -put workflow.xml /testfile/workflow.xml
你可能会 -
–put: Unknown command
OR
–p-t: Unknown command
这是因为副本是从UTF-8文件完成的,并且复制的-
或u
(或任何字符)可能具有不同的字符集。
所以只需在终端上输入命令(不要复制/粘贴),你应该没问题。
或者,如果您正在运行从中复制的shell脚本 其他一些编辑器在运行之前在脚本上运行
dos2unix
在Linux终端上。例如:
dos2unix <shell_script.sh>
答案 1 :(得分:4)
尝试了你的命令&#34;它出现了#34;,上面的命令中有一个拼写错误&hadoop fs -put ....&#39;。
使用&#39; -put&#39;而不是&#39; -put&#39;或者&#39; -copyFromLocal&#39;。问题在于&#39; - &#39;但正确的性格应该是&#39; - &#39;。因此,错误很明显: - )
这是我的示例(使用get命令而不是put):
$ hadoop fs –get /tmp/hadoop-data/output/* /tmp/hadoop-data/output/
–get: Unknown command
$ hadoop fs -get /tmp/hadoop-data/output/* /tmp/hadoop-data/output/
get: `/tmp/hadoop-data/output/part-r-00000': File exists
答案 2 :(得分:2)