HDFS命令参考

除介绍的命令外,还有许多bin/hadoop.dfs命令,以上介绍的只是帮助你开始使用HDFS,运行bin/hadoop dfs不带任何参数会列出所有FsShell系统提供的命令,当你遇到问题时执行bin/hadoop dfs –help commandName会显示这个命令的用法。

下面是所有命令的介绍,介绍之前先定义一下参数的意义:

  斜体:表示用户输入的变量。

 path:表示文件名或目录名。

  path…:表示一个或多个文件名或目录名。

   file:表示任意文件名。

   src和dest:表示HDFS的源路径和目标路径

   localSrc和localDest:表示本地文件系统的源路径和目标路径。

   在[]中的参数是可选的。


1. -ls path

列出path目录下的内容,包括文件名,权限,所有者,大小和修改时间。

2. -lsr path

与ls相似,但递归地显示子目录下的内容。

3. -du path

显示path下所有文件磁盘使用情况下,用字节大小表示,文件名用完整的HDFS协议前缀表示。

4. -dus path

与-du相似,但它还显示全部文件或目录磁盘使用情况

5. -mv src dest

将文件或目录从HDFS的源路径移动到目标路径。

6. -cp src dest

在HDFS中,将src文件或目录复制到dest。

7. –rm path

删除一个文件或目录

8. –rmr path

删除一个文件或递归删除目录

9. –put localSrc dest

将本地文件或目录localSrc上传到HDFS中的dest路径。

10. –copyFromLocal localSrc dest

与-put命令相同

11. –moveFromLocal localSrc dest

将文件或目录从localSrc上传到HDFS中的dest目录,再删除本地文件或目录localSrc。

12 –get [-crc] src localDest

将文件或目录从HDFS中的src拷贝到本地文件系统localDest。

13 –getmerge src localDest [addnl]

将在HDFS中满足路径src的文件合并到本地文件系统的一个文件localDest中。

14 –cat filename

显示文件内容到标准输出上。

15. -copyToLocal [-crc] src localDest

与-get命令相同。

16 -moveToLocal [-crc] src localDest

与-get命令相似,但拷贝结束后,删除HDFS上原文件。

17 -mkdir path

在HDFS中创建一个名为path的目录,如果它的上级目录不存在,也会被创建,如同linux中的mkidr –p。

18 -setrep [-R] [-w] rep path

设置目标文件的复制数。

19 -touchz path

创建一个文件。时间戳为当前时间,如果文件本就存在就失败,除非原文件长充为0。

20 -test –[ezd] path

如果路径(path)存在,返回1,长度为0(zero),或是一个目录(directory)。

21 –stat [format] path

显示文件所占块数(%b),文件名(%n),块大小(%n),复制数(%r),修改时间(%y%Y)。

22 –tail [-f] file

显示文件最后的1KB内容到标准输出。

23 –chmod [-R] [owner][:[group]] path…

递归修改时带上-R参数,mode是一个3位的8进制数,或是[augo]+/-{rwxX}。

24 –chgrp [-R] group

设置文件或目录的所有组,递归修改目录时用-R参数。

25 –help cmd

显示cmd命令的使用信息,你需要把命令的“-”去掉