hdfs有多级目录 合并文件下载到本地(递归下载)

该代码示例展示了如何使用Hadoop的FileSystem API从HDFS中递归下载多级目录下的所有文件,并将它们合并到本地的一个文件中。通过调用`myMerge()`方法,可以实现HDFS路径`/data2`下所有文件的下载和合并,最终保存到本地的`D:/data/file0913.txt`。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.hdfs;


import java.io.FileOutputStream;
import java.io.OutputStream;


import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.LocalFileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;


import com.beicai.utils.MyUtils;
/**
 * 
 * @described hdfs有多级目录 合并下载到本地
 *
 */
public class HdfsWork2 {
public static void main(String[] args) throws Exception {
myMerge();
}

public static void myWrite(Path path,FileSystem fs,OutputStream fsdos) throws Exception{
启动Hadoop分布式文件系统,进行相关操作,提交程序运行结果截图。 1. 向HDFS中上传任意文本文件,如果指定的文件HDFS中已经存在,由用户指定是追加到原有文件末尾还是覆盖原有的文件; 2. 从HDFS下载指定文件,如果本地文件与要下载文件名称相同,则自动对下载文件重命名; 3. 将HDFS中指定文件的内容输出到终端中; 4. 显示HDFS中指定的文件的读写权限、大小、创建时间、路径等信息; 5. 给定HDFS中某一个目录,输出该目录下的所有文件的读写权限、大小、创建时间、路径等信息,如果该文件目录,则递归输出该目录下所有文件相关信息; 6. 提供一个HDFS内的文件的路径,对该文件进行创建和删除操作。如果文件所在目录不存在,则自动创建目录; 7. 提供一个HDFS目录的路径,对该目录进行创建和删除操作。创建目录时,如果目录文件所在目录不存在则自动创建相应目录;删除目录时,由用户指定当该目录不为空时是否还删除该目录; 8. 向HDFS中指定的文件追加内容,由用户指定内容追加到原有文件的开头或结尾; 9. 删除HDFS中指定的文件; 10. 在HDFS中,将文件从源路径移动到目的路径。 三、实验过程与结论 每一项任务要求写出Shell指令并贴出实验结果的截图。给出我相应的命令,我在shell中的命令,一行一行的给我过程详细,给出的代码具有逻辑性,严谨不易报错,重点写一下3.5.6.7.8.9.10项的命令操作
03-20
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值