HDFS 命令:用于管理HDFS的Hadoop Shell命令大全


在使用 Hadoop 文件系统时最常用的重要 HDFS 命令及其工作方式。

  • fsck

HDFS 命令用于检查 Hadoop 文件系统的健康状况。

命令: hdfs fsck /
 
 

  • ls

HDFS 命令显示 HDFS 中的文件和目录列表。

命令: hdfs  dfs –ls /

 

  • mkdir

HDFS 命令在 HDFS 中创建目录。

用法: hdfs dfs –mkdir /directory_name

命令: hdfs dfs –mkdir /new_edureka

  • touchz

HDFS 命令在 HDFS 中创建文件大小为 0 字节的文件。

用法: hdfs dfs –touchz /directory/filename

命令: hdfs dfs –touchz /new_edureka/sample

注意:这里我们尝试在 hdfs 的“new_edureka”目录中创建一个名为“sample”的文件,文件大小为 0 字节。

  • du

HDFS 命令来检查文件大小。 

用法: hdfs dfs –du –s /directory/filename

命令: hdfs dfs –du –s /new_edureka/sample

  • cat

HDFS 命令读取 HDFS 上的文件并将该文件的内容打印到标准输出。

用法:  hdfs dfs –cat /path/to/file_in_hdfs

命令: hdfs dfs –cat /new_edureka/test

 

  • text

HDFS 命令获取源文件并以文本格式输出文件。

用法: hdfs dfs –text /directory/filename

命令: hdfs dfs –text /new_edureka/test

 

  • copyFromLocal

HDFS 命令将文件从本地文件系统复制到 HDFS。

用法: hdfs dfs -copyFromLocal <localsrc> <hdfs 目的地> 

命令: hdfs dfs –copyFromLocal /home/edureka/test /new_edureka
 

注意: 这里的测试是本地目录/home/edureka中的文件,命令执行后测试文件将被复制到HDFS的/new_edureka目录中。

  • copyToLocal

HDFS 命令将文件从 HDFS 复制到本地文件系统。

用法: hdfs dfs -copyToLocal <hdfs source> <localdst>

命令:  hdfs dfs –copyToLocal /new_edureka/test /home/edureka

 

注意:这里的 test 是 HDFS 的 new_edureka 目录下的一个文件,命令执行后,test 文件将被复制到本地目录 /home/edureka

  • put

HDFS 命令将单个源或多个源从本地文件系统复制到目标文件系统。

用法:  hdfs dfs -put <localsrc> <destination>

命令: hdfs dfs –put /home/edureka/test /user


注意:  命令 copyFromLocal 类似于 put 命令,不同之处在于源仅限于本地文件引用。

  • get

HDFS 命令将文件从 hdfs 复制到本地文件系统。

用法: hdfs dfs -get <src> <localdst>

命令: hdfs dfs –get /user/test /home/edureka

 

注意:命令 copyToLocal 类似于 get 命令,不同之处在于目标仅限于本地文件引用。

  • count

HDFS 命令计算路径下与指定文件模式匹配的目录、文件和字节数。

用法:hdfs  dfs -count <path>

命令: hdfs dfs –count /user

  

  • R M

HDFS 命令从 HDFS 中删除文件。

用法: hdfs dfs –rm <路径>     

命令:  hdfs dfs –rm /new_edureka/test

 

  • rm -r

HDFS 命令从 HDFS 中删除整个目录及其所有内容。

用法:hdfs dfs -rm -r <路径>

命令: hdfs dfs -rm -r /new_edureka

 

  • cp

HDFS 命令将文件从源复制到目标。此命令也允许多个源,在这种情况下,目标必须是目录。

用法: hdfs dfs  -cp <src> <dest>

命令: hdfs dfs -cp /user/hadoop/file1 /user/hadoop/file2

命令: hdfs dfs -cp /user/hadoop/file1 /user/hadoop/file2 /user/hadoop/dir  

 

  • MV

HDFS 命令将文件从源移动到目标。此命令也允许多个源,在这种情况下,目标需要是一个目录。

用法:  hdfs dfs -mv <src> <dest>

命令:  hdfs dfs -mv /user/hadoop/file1 /user/hadoop/file2

 

  • expunge

清空垃圾箱的 HDFS 命令。

命令: hdfs  dfs  -expunge

 

  • rmdir

HDFS 命令删除目录。

用法: hdfs dfs -rmdir  <路径>

命令: hdfs dfs –rmdir /user/hadoop

 

  • usage

HDFS 命令返回单个命令的帮助。

用法: hdfs dfs -usage <command>

命令: hdfs dfs -usage mkdir

  • help

HDFS 命令显示给定命令或所有命令(如果未指定)的帮助。

命令: hdfs dfs -help