我对Hadoop很新。当我尝试执行此命令时,它表示目标已存在。如何从hadoop中删除此文件?这与移除目标相同吗?
me$ hdfs -copyFromLocal myfile.txt input/myfile.txt
copyFromLocal: Target input/myfile.txt already exists
答案 0 :(得分:9)
您不必先删除文件然后复制新文件。您可以使用-f
-copyFromLocal
选项一步完成此操作
hadoop fs -copyFromLocal -f myfile.txt input/myfile.txt
答案 1 :(得分:0)
如果您想从HDFS中删除该文件,那么您可以:
$ hadoop dfs -rm <filePath>
在您的情况下,您需要:
$ hadoop dfs -rm input/myfile.txt
答案 2 :(得分:0)
此命令以递归方式删除,并允许您删除目录。
hadoop dfs -rmr <aDirectory>
就像rm -rf aDirectory
linux
一样
答案 3 :(得分:0)
对于您希望使用的Mapreduce 2.x:
hadoop fs -rm /path/to/filename
最常见的选项是添加-r标志,如果要删除整个目录(如MR的结果)。请注意,不推荐使用-rmr。
hadoop fs -rm -r /path/to/files
如果您要删除大量文件并且不希望它们坐在那里,直到垃圾收集发生,您可以添加-skipTrash标志。
hadoop fs -rm -r -skipTrash /path/to/files