写代码:删除HDFS中“/user/datauser”目录下的test.txt文件,删除HDFS中“/user/datauser”目录下的input子目录及其子目录下的所有内容
时间: 2024-10-13 08:08:51 浏览: 92
在Hadoop分布式文件系统(HDFS)中,删除文件或目录需要使用Hadoop的HDFS API或者命令行工具`hdfs`。以下是使用Java HDFS API和命令行的方式:
**使用Java HDFS API:**
```java
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
public class HDFSDelete {
public static void main(String[] args) throws Exception {
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
// 删除文件
Path filePath = new Path("/user/datauser/test.txt");
if (fs.exists(filePath)) {
fs.delete(filePath, true); // 第二个参数true表示递归删除
}
// 删除目录及内容
Path dirPath = new Path("/user/datauser/input");
if (fs.exists(dirPath)) {
fs.delete(dirPath, true);
}
fs.close();
}
}
```
**使用HDFS命令行工具(hdfs):**
```sh
# 进入HDFS shell
hadoop fs
# 删除单个文件
rm -r /user/datauser/test.txt
# 删除目录及内容
rm -r /user/datauser/input
```
注意:在实际操作前请确保你有权限删除这些文件和目录,并确认路径无误。
阅读全文
相关推荐


















