我有一个名为file name(1).zip的文件(其中有空格和括号),我想把这个文件放在HDFS上。但是,每次我试图通过hadoop fs -put ...把它,我得到一个例外。
我甚至尝试过在文件周围添加引号,甚至试图转义空格和括号,但它不起作用。
hduser@localhost:/tmp$ hadoop fs -put file\ name\(1\).zip /tmp/one
15/06/05 15:57:46 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
put: unexpected URISyntaxException
hduser@localhost:/tmp$ hadoop fs -put "file\ name\(1\).zip" /tmp/one/
15/06/05 15:59:19 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
put: unexpected URISyntaxException
hduser@localhost:/tmp$ hadoop fs -put "file name(1).zip" /tmp/one/
15/06/05 16:00:36 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
put: unexpected URISyntaxException是否有任何工作,以将这样的文件放在HDFS或我在这里遗漏了什么。
发布于 2017-03-31 09:04:53
HDFS完全可以使用文件或目录名称中的空格。
是hdfs不支持将文件从本地磁盘中放入其文件名中有空格。但是有一个技巧可以实现这一点( 参考文献 ):
cat file\ name\(1\).zip | hadoop fs -put - "/tmp/one/file name(1).zip"希望这能帮助那些需要这个的人。
https://stackoverflow.com/questions/30669210
复制相似问题