你好,游客 登录
背景:
阅读新闻

大数据框架hadoop的文件系统(HDFS)命令大全

[日期:2014-11-28] 来源:seandeng888的博客  作者:seandeng888 [字体: ]

 

HDFS(hadoop Distributed File System)Hadoop应用用到的一个最主要的分布式存储系统。一个HDFS集群主要由一个NameNode和多个Datanode组成:Namenode管理文件系统的元数据,而Datanode存储了实际的数据。基本上,客户端是通过联系Namenode以获取文件的元数据或修饰属性,而真正的文件I/O操作是Namenode直接和Datanode进行交互的。

调用文件系统命令应使用bin/hadoop fs <args>的形式。所有的FS shell命令使用URI路径作为参数。URI格式是scheme://authority/path。对HDFS文件系统,schemehdfs,对本地文件系统,schemefile。其中schemeauthority参数都是可选的,如果未加指定,就会使用配置中指定的默认scheme(core-site.xml配置文件的fs.default.name属性)。一个HDFS文件或目录比如/user/myuser可以表示成hdfs://namenode:namenodeport/user/myuser,或者更简单的/user/myuser(假设你配置文件中的默认值是namenode:namenodeport)。接下来从查询类、新增类、删除类及修改类四个角度来列举HDFS命令。

1查询类

1.1查看指定目录下内容

hadoop dfs –ls /user/myuser

1.2lsr

hadoop fs -lsr <args>

ls命令的递归版本。

1.3打开某个已存在文件

hadoop fs -cat URI [URI ...]

hadoop dfs -cat /user/myuser/data.txt file:///file hdfs://host:port/user/myuser

1.4hadoop上某个文件down至本地已有目录下

hadoop fs –get /user/test/bqh/in.txt /home/test/

1.5hadoop指定目录下所有内容保存为一个文件,同时down至本地

hadoop dfs –getmerge /user /home/t

1.6copyToLocal

hadoop fs -copyToLocal URI <localdst>

除了限定目标路径是一个本地文件外,和get命令类似

1.7du

hadoop fs -du URI [URI ...]

显示目录中所有文件的大小,或者当只指定一个文件时,显示此文件的大小。

1.8dus

hadoop fs -dus <args>

显示文件的大小。

1.9stat

hadoop fs -stat URI [URI ...]

返回指定路径的统计信息。

1.10tail

hadoop fs -tail URI

将文件尾部的内容输出到stdout

1.11test

hadoop fs -test -[ezd] URI

-e 检查文件是否存在。如果存在则返回0

-z 检查文件是否是0字节。如果是则返回0.

-d 检查路径是个目录,则返回1,否则返回0.

1.12text

hadoop fs -text <src>

将源文件输出为文本格式。

2新增类

2.1mkdir

hadoop fs -mkdir <paths>

接受路径指定的URI作为参数,创建这些目录。类似于Unixmkdir -p,它会创建路径中的各级父目录。

2.2将本地文件存储至hadoop

hadoop fs –put /home/myuser/file.txt /user/t

2.3将本地文件夹存储至hadoop

hadoop fs –put /home/t/dir_name /user/t

2.4hadoop指定目录内创建新目录

hadoop fs –mkdir /user/myuser/t

2.5hadoop指定目录下新建一个空文件

hadoop fs -touchz /user/myuser/new.txt

2.6copyFromLocal

hadoop fs -copyFromLocal <localsrc> URI除了限定资源路径是一个本地文件外,和put命令相似。

2.7moveFromLocal

hadoop dfs -moveFromLocal <src> <dsr>

3删除类

3.1删除hadoop上指定文件

hadoop fs –rm /user/myuser/ok.txt

hadoop fs –rmr /user/myuser/ok.txt

3.2删除hadoop上指定文件夹(包含子目录等)

hadoop fs –rmr /user/myuser/t

3.3Expunge

hadoop fs -expunge

清空回收站

4修改类

4.1hadoop上某个文件重命名

hadoop fs –mv /user/test.txt /user/ok.txt

4.2改变文件必属的组。

hadoop fs -chgrp [-R] GROUP [URI ...]

使用-R将使改变在目录结构下递归进行。

4.3改变文件的权限

hadoop fs -chmod [-R] <MODE[,MODE]> URI [URI ...]

使用-R将使改变在目录结构下递归进行。

4.4改变文件的拥有者

hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI]

使用-R将使改变在目录结构下递归进行。

4.5cp

hadoop fs -cp URI [URI ...] <dest>

将文件从源路径复制到目标路径。这个命令允许有多个源路径,此时目标路径必须是一个目录。

原文链接:http://seandeng888.iteye.com/blog/2161635





收藏 推荐 打印 | 录入: | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款