测试环境:centos6.10,hadoop2.7.3,jdk1.8

测试代码:HDFSCSample.c

#include "hdfs.h"
#include <string.h>
#include <stdio.h>
#include <stdlib.h> int main(int argc, char **argv) { hdfsFS fs = hdfsConnect("default", );
const char* writePath = "/tmp/testfile.txt";
hdfsFile writeFile = hdfsOpenFile(fs, writePath, O_WRONLY |O_CREAT, , , );
if(!writeFile) {
fprintf(stderr, "Failed to open %s for writing!\n", writePath);
exit(-);
}
char* buffer = "Hello, World!";
tSize num_written_bytes = hdfsWrite(fs, writeFile, (void*)buffer, strlen(buffer)+);
if (hdfsFlush(fs, writeFile)) {
fprintf(stderr, "Failed to 'flush' %s\n", writePath);
exit(-);
}
hdfsCloseFile(fs, writeFile);
}

编译脚本:

  compile.sh

#!/bin/bash
export JAVA_HOME=/root/softs/jdk1..0_172
export HADOOP_HOME=/root/softs/hadoop-2.7./ gcc -I$HADOOP_HOME/include -L$HADOOP_HOME/lib/native -lhdfs -L$JAVA_HOME/jre/lib/amd64/server -ljvm HDFSCSample.c

执行命令: 

  # chmod +x compile.sh

  # ./compile.sh

执行脚本:

  execute.sh

#!/bin/bash
export JAVA_HOME=/root/softs/jdk1..0_172
export HADOOP_HOME=/root/softs/hadoop-2.7./
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_HOME/jre/lib/amd64/server/ CLASSPATH=./
for f in $HADOOP_HOME/share/hadoop/common/*.jar; do
CLASSPATH=${CLASSPATH}:$f;
done
for f in $HADOOP_HOME/share/hadoop/common/lib/*.jar; do
CLASSPATH=${CLASSPATH}:$f;
done
for f in $HADOOP_HOME/share/hadoop/hdfs/*.jar; do
CLASSPATH=${CLASSPATH}:$f;
done
for f in $HADOOP_HOME/share/hadoop/hdfs/lib/*.jar; do
CLASSPATH=${CLASSPATH}:$f;
done
export CLASSPATH=$CLASSPATH ./a.out

执行命令:

  # chmod +x execute.sh

  # ./execute.sh

打开/tmp/testFile.txt,可以看到里面写入了一条 Hello, World!

  

最新文章

  1. 谱聚类(spectral clustering)原理总结
  2. SQL 批量删除表
  3. c# DataTable 转为 List 类型
  4. 系统架构:Web应用架构的新趋势---前端和后端分离的一点想法
  5. TFS任务更新
  6. register based 和 stack based虚拟机的区别
  7. Umap2:开源USB host安全评估工具
  8. DJANGO的requirements的运用
  9. Initializing nested object properties z
  10. Storm系列(六)架构分析之Scheduler-调度器[EventScheduler]
  11. opencl 在vs2015上遇见的问题
  12. InnoDB的行溢出数据,Char的行结构存储
  13. .net 自动摘要等算法 HanLP.net
  14. Vim 游戏 2048
  15. Android Studio 2.0 Preview 4 的逆袭以及各种神注释
  16. Labview学习笔记-条件结构的两个问题
  17. Luogu P1247 取火柴游戏
  18. Python2.7-内置类型
  19. 使用Python + Selenium打造浏览器爬虫
  20. shell命令输出

热门文章

  1. IOS设计模式的六大设计原则之单一职责原则(SRP,Single Responsibility Principle)
  2. ORA-00349: failure obtaining block size for &amp;#39;+fra_grp01_d
  3. ThinkPHP 处理商品添加的时候操作多张表 用事务解决。
  4. jvisualvm远程调试
  5. 整合Thinkphp数据库基本操作CURD,界面datagrid采用EasyUi的Demo
  6. 四个 jQuery 方法:
  7. 在NodeJS中使用流程控制工具Async
  8. C# 6新特性简单总结
  9. unity3d面试题与参考答案
  10. springmvc 生命周期