通过管道向 hadoop put 文件
来源:互联网 发布:迪优美特网络机顶盒价格 编辑:程序博客网 时间:2024/05/18 00:54
原文:http://www.iteye.com/topic/588248
使用 hadoop file shell 可以方便地向 hdfs put 文件,但是,该 shell 不支持从管道读取数据并放到 hdfs 文件中。它仅支持这样的 put 命令:
- cd $HADOOP_HOME
- bin/hadoop fs -put localfile $hdfsFile
- bin/hadoop fs -put localfiles $hdfsDir
cd $HADOOP_HOME if bin/hadoop fs -test -d $hdfsFile then echo "$hdfsFile is a directory" >&2 exit 1 fi cat localfileS | bin/hadoop fs -put /dev/fd/0 $hdfsFile if [[ "0 0" == ${PIPESTATUS[*]} ]] then echo success else bin/hadoop fs -rm $hdfsFile echo failed >&2 fi
其中,使用 PIPESTATUS 检查错误。
需要注意,使用 /dev/fd/0 put 文件时,hdfsFile 必须事先不存在,并且不能是一个目录,如果hdfsFile实际上是一个目录,那么,put 仍然正确执行,但是,hdfs 中的文件名将是hdfsFile/0
/dev/fd/ 中是进程所有已打开的文件描述符列表,例如 /dev/fd/0 代表标准输入,/dev/fd/1 代表标准输出,/dev/fd/2 代表标准错误输出,等等,打开 /dev/fd/n 相当于调用 dup(n) 。
- 通过管道向 hadoop put 文件
- 通过管道向 hadoop put 文件
- hadoop put 强制覆盖文件
- hadoop fs -put 上传文件失败
- 通过webhdfs put文件到hdfs
- 通过管道实现文件复制
- JNI通过管道传输文件
- hadoop上传文件失败 hadoop fs -put 1901 /userdata
- 配置Apache服务器支持向目录PUT文件
- 配置Apache服务器支持向目录PUT文件
- hadoop put内部调用,hdfs写文件流程
- 通过管道向CMD进程写新指令时回显More?
- 通过Ftp put命令上传导致文件损坏的解决办法
- 通过HTTP PUT方法实现文件上传的步骤
- hadoop fs -put 上传文件遇到错误2 hadoop fs -put /opt/exercise/ds.txt ds.txt
- 父子进程通过管道实现文件复制
- Hadoop dfs -put 失败
- hadoop fs -put
- UDP 聊天室
- [转载]关于CvSeq指针的内存释放问题
- 模板与宏的比较(Templates vs. Macros)(转)
- ToString()用法大全
- 查看当前php信息
- 通过管道向 hadoop put 文件
- android Api Demos
- Windows下的权限更改脚本
- TTL和CMOS电平总结[转载]
- Supporting Multiple Screens 翻译
- 详解Java解析XML的四种方法
- JDBC连接数据库经验技巧集萃
- 天气预报之一Dom解析(JAVA版)
- Linux硬盘启动相关命令