我试图将文件从源文件复制到hdfs
查询: Hadoop fs -copyFromLocal(本地路径)(源路径)
例如 Hadoop fs -copyFromLocal C:\ users \ Desktop(源路径)
同样例如 Hadoop fs -copyFromLocal C:\ users \ Desktop URI
但是输入错误
-copyFromLocal:无法从空字符串创建路径 用法:hadoop fs [通用选项] -copyFromLocal [-f] [-p](localsrc)...(dst)
答案 0 :(得分:0)
尝试hadoop dfs -copyFromLocal file_to_be_copied hdfs://namenode:/path_to_location
fs命令正在折旧。
注意:您不必提及实际的HDFS路径。您也可以执行类似
的操作 hadoop dfs -copyFromLocal file_to_be_copied /path_to_location_within_hdfs
答案 1 :(得分:0)
最后尝试转发正斜杠,如:
Hadoop fs -copyFromLocal C:\\users\\Desktop\myfile.txt URI
或使用
Hadoop fs -copyFromLocal C:/users/Desktop/myfile.txt URI
答案 2 :(得分:0)
很遗憾,我无法在您的回复下面发表评论。
获取路径的最简单方法是进入UI并单击“浏览文件系统”。另一种选择是hdfs dfs -ls /
或hdfs dfs -lsr /
ls
会列出根目录中的目录/文件
lsr
将以递归方式读取根目录中的所有子目录。
答案 3 :(得分:0)
HDFS就像其他文件系统一样。路径以/作为root开头。句点(。)表示当前目录。我在Linux平台上。希望下面的例子能有所帮助。
name@host: ~/oracle/sql$ hdfs dfs -ls /
Found 5 items
drwxr-xr-x - myname supergroup 0 2014-09-05 03:06 /directory
drwxr-xr-x - myname supergroup 0 2014-05-10 03:34 /in
drwxr-xr-x - myname supergroup 0 2014-10-16 22:50 /system
drwxrwx--- - myname supergroup 0 2014-08-18 08:44 /tmp
drwxr-xr-x - myname supergroup 0 2014-08-18 08:41 /user
name@host: ~/oracle/sql$ hdfs dfs -copyFromLocal foo.sql /
name@host: ~/oracle/sql$ hdfs dfs -ls /
Found 6 items
drwxr-xr-x - myname supergroup 0 2014-09-05 03:06 /directory
-rw-r--r-- 3 myname supergroup 90 2015-03-24 05:33 /foo.sql
drwxr-xr-x - myname supergroup 0 2014-05-10 03:34 /in
drwxr-xr-x - myname supergroup 0 2014-10-16 22:50 /system
drwxrwx--- - myname supergroup 0 2014-08-18 08:44 /tmp
drwxr-xr-x - myname supergroup 0 2014-08-18 08:41 /user
name@name: ~/oracle/sql$ hdfs dfs -copyFromLocal foo.sql /user/myname/
name@name: ~/oracle/sql$ hdfs dfs -ls /user/myname/foo.sql
-rw-r--r-- 3 myname supergroup 90 2015-03-24 05:41 /user/myname/foo.sql
name@host: ~/oracle/sql$