4

hadoop shell 有命令hadoop fs -rm /dir/*。但我没有从 API 中找到类似的。

4

1 回答 1

3

要删除目录中的文件而不删除目录本身或从任何子目录中删除文件(即做什么hadoop fs -rm /dir/*),您可以使用:

FileSystem fs = dir.getFileSystem(getConf());
RemoteIterator<LocatedFileStatus> it = fs.listFiles(dir, false);
while (it.hasNext()) {
    fs.delete(it.next().getPath(), false);
}
于 2013-04-16T13:18:27.917 回答