HDFS删除除一个以外的所有文件夹

时间:2019-11-18 15:07:25

标签: hdfs

在HDFS中删除文件夹的标准命令如下:

hadoop fs -rmdir -r /data/11.19

删除2个文件夹名称之外的文件夹的linux命令如下:

rm -r -v !("/data/11.19"|"/data/10.19") 

是否可以删除除具有给定名称的2个文件夹之外的所有文件夹?我找不到任何帮助。

我得到的是这个错误:

  

2 / bin / sh:1:语法错误:“(”意外

在功能方面,我只想保留2个文件夹。当前和最后几个月。格式为“%m%y” 因此,如果当前月份为“ 11.19”,我想删除除文件夹“ 11.19”和“ 10.19”以外的所有文件夹。

1 个答案:

答案 0 :(得分:0)

现在请与linus和hadoop混淆。 Linux命令在hadoop中不起作用。 Hadoop具有不同的命令集。

您可以将所需的文件夹移到hadoop中的其他位置,然后删除其余的文件夹并将其移回

hadoop fs -mkdir /doNotDelete
hadoop fs -mv /data/11.19 /doNotDelete/
hadoop fs -mv /data/10.19 /doNotDelete/

现在删除所有剩余的

hadoop fs -rm /data/*

现在将这两个文件放回

hadoop fs -cp /doNotDelete/* /data/