如何从Hadoop集群中删除名称中包含逗号(,)的目录?

jav*_*dev 54 hadoop file comma

当我尝试使用rmr hadoop shell命令删除此目录时,我已将目录上传到hadoop集群,其名称中包含",",如"MyDir,Name"

hadoop dfs -rmr hdfs://host:port/Navi/MyDir, Name
Run Code Online (Sandbox Code Playgroud)

我收到以下消息rmr:无法删除hdfs:// host:port/Navi/MyDir,:没有这样的文件或目录.rmr:无法删除名称:没有这样的文件或目录.

但是,我已使用相同的命令从同一位置成功删除了其他目录,即

hadoop dfs -rmr hdfs://host:port/dir_path
Run Code Online (Sandbox Code Playgroud)

删除此类目录的任何解决方案.

小智 68

你有没有尝试过 :

hadoop dfs -rmr hdfs://host:port/Navi/MyDir\,\ Name

  • 不推荐这应该是"hadoop fs -rm -r <directory>" (26认同)
  • 或更短的`hdfs dfs -rm -r <directory>` (6认同)

Jey*_*mov 58

或者,如果你不知道网址,你可以使用

hadoop fs -rm -r -f /user/the/path/to/your/dir
Run Code Online (Sandbox Code Playgroud)

  • "-rmr"在Hadoop 2.6中已弃用.答案说"-rm -r"没问题. (8认同)
  • 你是说 hadoop fs -rmr -f /user/the/path/to/your/dir 吗? (2认同)

noe*_*ego 13

hdfs dfs -rm -r /path/to/directory
Run Code Online (Sandbox Code Playgroud)


Are*_*efe 7

在终端运行命令

$hadoop fs -rm -r /path/to/directory
Run Code Online (Sandbox Code Playgroud)


Ani*_*non 5

在hadoop1.0中:

hadoop fs -rmr /PATH/ON/HDFS
Run Code Online (Sandbox Code Playgroud)

在hadoop2.0中:

hdfs dfs -rm -R /PATH/ON/HDFS
Run Code Online (Sandbox Code Playgroud)

用于在路径中\转义,