HDFS体系结构及shell操作,hdfs体系结构shell


一、hadoop1.1.0的介绍

二、HDFS的shell操作

三、HDFS常用命令

  -help [cmd] //显示命令的帮助信息

 -ls(r) <path> //显示当前目录下所有文件

 -du(s) <path> //显示目录中所有文件大小

 -count[-q] <path> //显示目录中文件数量

 -mv <src> <dst> //移动多个文件到目标目录

 -cp <src> <dst> //复制多个文件到目标目录

 -rm(r) //删除文件(夹)

 -put <localsrc> <dst> //本地文件复制到hdfs

 -copyFromLocal //同put

 -moveFromLocal //从本地文件移动到hdfs

 -get [-ignoreCrc] <src> <localdst> //复制文件到本地,可以忽略crc校验

 -getmerge <src> <localdst> //将源目录中的所有文件排序合并到一个文件中

 -cat <src> //在终端显示文件内容

 -text <src> //在终端显示文件内容

-copyToLocal [-ignoreCrc] <src> <localdst> //复制到本地

-moveToLocal <src> <localdst>

-mkdir <path> //创建文件夹

-touchz <path> //创建一个空文件

HDFS 的shell练习

hadoop fs -ls /  查看HDFS根目录

hadoop fs -mkdir /test 在根目录创建一个目录test

hadoop fs -mkdir /test1 在根目录创建一个目录test1



操作系统中常说的shell是指什?

操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。

Shell提供了你与操作系统之间通讯的方式。这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。

Shell基本上是一个命令解释器,类似于DOS下的command.com。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell (sh)和C shell (csh)。
 

怎从hadoop的Hdfs上查询文件

A1.该索引叫FsImage, 但没有对外提供api, 参考 附录的链接1
整个文件系统的名字空间,包括数据块到文件的映射、文件的属性等,都存储在一个称为FsImage的文件中,这个文件也是放在Namenode所在的本地文件系统上。

A2. FS Shell, 详细请参考链接2
1)hadoop fs -ls
功能跟shell 的 ls 命令相同
2)hadoop fs -lsr
ls命令的递归版本。类似于Unix中的ls -R。

如果要实现复杂的查找功能,可以考虑用下述方式
hadoop fs -lsr / | awk/sed/grep .....

链接1:FsImage/EditLog的官方说明
hadoop.apache.org/...%8C%96

链接2:HDFS shell
hadoop.apache.org/...tml#ls
 

相关内容