Hadoop创建(上传)文件

本文详细介绍了如何在本地创建shell脚本,纠正了常见的语法错误,并演示了如何使用Java代码将本地文件上传到Hadoop目录中。此外,还提供了运行shell脚本并检查Hadoop目录中文件的步骤。

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

1、本地创建文件(shell)

myfirst
备注:
1) 该文件第一行有误,故此报错(command not found),应该是:#my first shell test
2) shell的 if 语法比较坑,不像java中可以随意换行

2、上传到Hadoop

将本地文件myfirst.sh上传到已创建的hadoop目录中

	/**
	 * 本地文件上传到hadoop目录
	 */
	public void upload(){
		String srcFile = "/home/cent/Desktop/myfirst.sh";
		String dstFile = "/user/test";
		try {
			fs.copyFromLocalFile(new Path(srcFile), new Path(dstFile));
		} catch (IllegalArgumentException e) {
			e.printStackTrace();
		} catch (IOException e) {
			System.out.println("-- IOException --");
			e.printStackTrace();
		}
	}

3、运行、查看结果

首先在eclipse运行测试类;然后在Terminal中查看hadoop目录文件

hadoop fs -ls /user/test
myfirst

### 如何在Hadoop环境中创建TXT文件 要在Hadoop分布式文件系统 (HDFS)创建一个 `.txt` 文件,可以通过多种方式实现。以下是具体方法: #### 方法一:通过命令行工具 `hdfs dfs` 创建文件 可以直接利用 Hadoop 提供的命令行工具来操作 HDFS。首先,在本地 Linux 文件系统中创建一个文本文件并写入内容[^2]。 ```bash # 使用 vim 编辑器创建 myLocalFile.txt 并输入内容 vim /home/hadoop/myLocalFile.txt ``` 保存该文件后,将其上传到 HDFS 上指定的位置: ```bash # 将本地文件上传到 HDFS 的根目录下 hdfs dfs -put /home/hadoop/myLocalFile.txt / ``` 此时,可以在 HDFS 中查看刚刚上传文件是否存在: ```bash # 查看 HDFS 根目录下的文件列表 hdfs dfs -ls / ``` 如果需要直接在 HDFS 中创建一个新的空文件,则可以运行以下命令: ```bash # 在 HDFS 中创建名为 newFile.txt 的新文件 hdfs dfs -touchz /newFile.txt ``` 此命令会生成一个大小为零的新文件 `/newFile.txt`[^1]。 --- #### 方法二:编写 Java 程序创建 TXT 文件 除了使用命令行外,还可以借助 Apache Hadoop API 来编程完成这一任务。下面是一个简单的 Java 示例程序用于连接 HDFS 和创建新的文本文件: ```java import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import java.io.OutputStream; import java.net.URI; public class CreateTextInHDFS { public static void main(String[] args) throws Exception { Configuration conf = new Configuration(); FileSystem fs = FileSystem.get(new URI("hdfs://localhost:9000"), conf, "hadoop"); Path path = new Path("/createdByJava.txt"); OutputStream os = fs.create(path); String content = "This is a text file created by Java program.\n"; os.write(content.getBytes()); os.close(); System.out.println("File has been successfully written to HDFS."); } } ``` 上述代码片段展示了如何通过 Java 应用程序访问 HDFS,并向其中写入数据流以形成最终的目标文件 `createdByJava.txt`[^5]。 --- #### 方法三:手动配置与启动 Hadoop 集群后再执行操作 为了能够正常地进行以上两种操作之一,前提是已经成功搭建好了 Hadoop 运行环境以及完成了必要的初始化设置工作,包括但不限于修改核心站点 XML 文件 (`core-site.xml`) 及其他三个主要组件的相关属性定义等内容[^3][^4]。 一旦整个框架被正确部署完毕之后就可以按照前述介绍的方法去尝试新建 txt 类型文档了。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值