HDFS是一种分布式文件系统,为MapReduce这种框架下的海量数据分布式处理而设计。

Hadoop之HDFS文件操作常有两种方式,一种是命令行方式,即Hadoop提供了一套与Linux文件命令类似的命令行工具;另一种是JavaAPI,即利用Hadoop的Java库,采用编程的方式操作HDFS的文件。

方式一:命令行方式

Hadoop文件操作命令形式为

hadoop fs -cmd <args>

说明:cmd是具体的文件操作命令,<args>是一组数目可变的参数。

Hadoop最常用的文件操作命令,包括添加文件和目录、获取文件、删除文件等。

1.添加文件和目录

HDFS有一个默认工作目录/usr/$USER,其中$USER是你的登录用户名,例如root。该目录不能自动创建,需要执行mkdir命令创建。

hadoop fs -mkdir  /usr/root

使用Hadoop的命令put将本地文件README.txt送到HDFS。

hadoop fs -put README.txt  .

注意上面这个命令最后一个参数是句点(.),这意味着把本地文件放入到默认的工作目录,该命令等价于:

hadoop fs -put README.txt     /user/root

使用Hadoop的ls命令,即:hadoop fs -ls

2.获取文件

获取文件包含两层意思,一是HDFS从本地文件中获取文件,即前面介绍的添加文件;二是本地文件从HDFS中获取文件,可以使用Hadoop的get命令。例如若本地文件没有README.txt文件,需要从HDFS中取回,可以执行如下命令。

hadoop fs -get  README.txt  .

或者

hadoop fs -get README.txt  /usr/root/README.txt

3.删除文件

Hadoop删除文件命令为rm。例如要删除从本地文件上传的README.txt,可以执行如下命令:

hadoop  fs -rm  README.txt

4.检索文件

检索文件即查阅HDFS中的文件内容,可以使用hadoop中的cat命令。例如要查阅README.txt的内容,可以执行如下命令:

hadoop fs -cat README.txt

另外,hadoop的cat命令的输出也可以使用管道传递给Unix 命令的head:

hadoop fs -cat README.txt | head

Hadoop也支持tail命令查看最后一千字节。例如要查阅README.txt最后一千个字节,可以执行如下命令。

hadoop fs -tail README.txt

5.查阅帮助

查阅Hadoop命令帮助,可以让我们很好地掌握和使用Hadoop的命令。我们可以执行hadoop fs 获取所用版本Hadoop的一个完整命令类别,也可以使用help来显示某个具体命令的用法及简短描述。

例如,要了解ls命令,可执行如下命令:

hadoop  fs -help ls

以上内容参考自http://blog.csdn.net/wangloveall/article/details/28578393,感谢博主!

HDFS文件操作(命令行)的更多相关文章

  1. Hadoop HDFS的shell(命令行客户端)操作实例

    HDFS的shell(命令行客户端)操作实例 3.2 常用命令参数介绍 -help 功能:输出这个命令参数手册 -ls                  功能:显示目录信息 示例: hadoop fs ...

  2. Hadoop之HDFS文件操作常有两种方式(转载)

    摘要:Hadoop之HDFS文件操作常有两种方式,命令行方式和JavaAPI方式.本文介绍如何利用这两种方式对HDFS文件进行操作. 关键词:HDFS文件    命令行     Java API HD ...

  3. Hadoop之HDFS文件操作

    摘要:Hadoop之HDFS文件操作常有两种方式.命令行方式和JavaAPI方式.本文介绍怎样利用这两种方式对HDFS文件进行操作. 关键词:HDFS文件    命令行     Java API HD ...

  4. HDFS中的命令行

    HDFS中的命令行 本文介绍了HDFS以命令行执行的时候.几个经常使用的命令行的作用和怎样使用~ 1. fs fs是启动命令行动作,该命令用于提供一系列子命令. 使用形式为hadoop fs –cmd ...

  5. Linux查找并删除重复文件的命令行fdupes工具,dupeGuru图形工具

    查了几十个网页,找到这个接近满意的解决方案http://unix.stackexchange.com/questions/146197/fdupes-delete-files-aft... 不过正则里 ...

  6. 实战Git命令(界面操作+命令行)

    先说明下公司的发版步骤,当需要开发一个新的功能,先从master分支中拉出一个自己的分支a(假设分支为a),在a分支开发功能完后,需要切换到dev分支,然后把自己的分支a合到dev分支,部署测试环境让 ...

  7. hadoop的hdfs文件操作实现上传文件到hdfs

    这篇文章主要介绍了使用hadoop的API对HDFS上的文件访问,其中包括上传文件到HDFS上.从HDFS上下载文件和删除HDFS上的文件,需要的朋友可以参考下hdfs文件操作操作示例,包括上传文件到 ...

  8. gplaycli—— 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具

    gplaycli-- 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具 这个 GooglePlay市场 中 https://play.google.com/store/a ...

  9. JAVA API 实现hdfs文件操作

    java api 实现hdfs 文件操作会出现错误提示: Permission denied: user=hp, access=WRITE, inode="/":hdfs:supe ...

随机推荐

  1. P5020 货币系统 (NOIP2018)

    传送门 BFS解法 显然如果一个面额A可以被其他面额表示出来 那么这个面额A就没用了 且如果A不能被其他面额表示,那么A一定有用(A本身的值只有自己可以表示) 发现面额最大不超过 25000 那么设 ...

  2. HDU 4507 求指定范围内与7不沾边的所有数的平方和 (数位DP)

    题意:求区间[l,r]内所有与7无关的数的平方和(取模)定义与7无关的数:                                      1.数字的数位上不能有7              ...

  3. Ubuntu 安装 phpredis扩展

    官网 https://github.com/phpredis/phpredis 下载->然后解压->上传服务器 /etc/phpredis 进行 cd /etc/phpredisphpiz ...

  4. 4.会话管理(Session)

    1.会话管理的概念和基本原理: 会话管理概念: 会话的实现过程: 2.使用Cookie.隐藏域.URL重写实现会话管理 创建并向客户端发送Cookie; 从客户端读取Cookies Cookie的方法 ...

  5. python 安装 第三方包

    ########1 (python 虚拟环境(如pycharm 中的 project )是一个独立的环境,所以也要重新安装一次第三方包) 上官网搜索 包 https://pypi.org/projec ...

  6. hdfs namenode/datanode工作机制

    一. namenode工作机制 1. 客户端上传文件时,namenode先检查有没有同名的文件,如果有,则直接返回错误信息.如果没有,则根据要上传文件的大小以及block的大小,算出需要分成几个blo ...

  7. Git简单上传和下载

    本文参考 git-简易指南 编写 上传本地代码到gitHub仓库 第一步:建立git仓库 cd到你的本地项目根目录下,执行git命令 git init 第二步:将项目的所有文件添加到仓库中 git a ...

  8. 使用cucumber & selenium实现一个简单的bddtest

    1.Cucumber介绍 + feature : read requirement +scenario : testing situation,including + Given/ + when/ + ...

  9. Fedora14 mount出现错误时解决办法【亲测有效】

    挂载时出现了如上图所示问题,看第一条英语提示,我刚开始以为是文件权限不够,改了权限之后,依旧存在这样的问题, 于是,我上网查阅了一些资料: 在解决之前,先让我们一起来了解一下nfs: NFS最大功能就 ...

  10. 判断表单中是否含有disabled属性

    我想判断input里面是否有disabled.或者选中未选中的selected  checked 属性时,需要用  prop()  方法,返回的结果是 true 或 false . attr()这个方 ...