温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

HDFS有哪些基本操作

发布时间:2020-08-03 16:35:34 来源:亿速云 阅读:152 作者:Leah 栏目:编程语言

HDFS有哪些基本操作?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。


 

1Shell命令行客户端

 

Hadoop 提供了文件系统的shell命令行客户端,使用方法如下:

 

hadoop     fs      <args>

 

文件系统 shell 包括与 Hadoop 分布式文件系统(HDFS)以及 Hadoop 支持的其他文件系统(如本地 FSHFTP FSS3 FS 等)直接交互的各种类似 shell 的命令。所有 FS shell 命令都将路径 URI 作为参数。

 

URI 格式为 scheme://authority/path。对于 HDFS,该 scheme hdfs,对于本地 FS,该 scheme filescheme authority 是可选的。如果未指定, 则使用配置中指定的默认方案。

 

对于 HDFS,命令示例如下:

 

hadoop fs -ls hdfs://namenode:host/parent/child hadoop fs -ls /parent/child    fs.defaultFS 中有配置对于本地文件系统,命令示例如下:

 

hadoop fs -ls file:///root/ 

 

如果使用的文件系统是 HDFS,则使用 hdfs dfs 也是可以的,此时

 

hadoop fs <args> = hdfs dfs <args>

 

2Shell命令选项

 

选项名称

使用格式

含义

-ls

-ls <路径>

查看指定路径的当前目录结构

-lsr

-lsr <路径>

递归查看指定路径的目录结构

-du

-du <路径>

统计目录下个文件大小

-dus

-dus <路径>

汇总统计目录下文件()大小

-count

-count [-q] <路径>

统计文件()数量

-mv

-mv <源路径> <目的路径>

移动

-cp

-cp <源路径> <目的路径>

复制

-rm

-rm [-skipTrash] <路径>

删除文件/空白文件夹

-rmr

-rmr [-skipTrash] <路径>

递归删除

-put

-put <多个 linux 上的文件> <hdfs 路径>

上传文件

-copyFromLocal

-copyFromLocal <多个 linux 上的文件>

<hdfs 路径>

从本地复制

-moveFromLocal

-moveFromLocal <多个 linux 上的文件>

<hdfs 路径>

从本地移动

-getmerge

-getmerge <源路径> <linux 路径>

合并到本地

-cat

-cat <hdfs 路径>

查看文件内容

-text

-text <hdfs 路径>

查看文件内容

-copyToLocal

-copyToLocal [-ignoreCrc] [-crc] [hdfs

源路径] [linux 目的路径]

从本地复制

-moveToLocal

-moveToLocal [-crc] <hdfs 源路径> <li

nux 目的路径>

从本地移动

-mkdir

-mkdir <hdfs 路径>

创建空白文件夹

-setrep

-setrep [-R] [-w] <副本数> <路径>

修改副本数量

-touchz

-touchz <文件路径>

创建空白文件

-stat

-stat [format] <路径>

显示文件统计信息

-tail

-tail [-f] <文件>

查看文件尾部信息

-chmod

-chmod [-R] <权限模式> [路径]

修改权限

-chown

-chown [-R] [属主][:[属组]] 路径

修改属主

-chgrp

-chgrp [-R] 属组名称 路径

修改属组

-help

-help [命令选项]

帮助

3Shell 常用命令介绍

1ls

使用方法:hadoop fs -ls [-h] [-R] <args>

功能:显示文件、目录信息。

示例:hadoop fs -ls /user/hadoop/file1

2mkdir

使用方法:hadoop fs -mkdir [-p] <paths>

功能:在 hdfs 上创建目录,-p 表示会创建路径中的各级父目录。

示例:hadoop fs -mkdir &ndash;p /user/hadoop/dir1

3put

使用方法:hadoop fs -put [-f] [-p] [ -|<localsrc1> .. ]. <dst>

功能:将单个 src 或多个 srcs 从本地文件系统复制到目标文件系统。

-p:保留访问和修改时间,所有权和权限。

-f:覆盖目的地(如果已经存在)。

示例:hadoop fs -put -f localfile1 localfile2 /user/hadoop/hadoopdir

4get

使用方法:hadoop fs -get [-ignorecrc] [-crc] [-p] [-f] <src> <localdst>

-ignorecrc:跳过对下载文件的 CRC 检查。

-crc:为下载的文件写 CRC 校验和。功能:将文件复制到本地文件系统。

示例:hadoop fs -get hdfs://host:port/user/hadoop/file localfile

5appendToFile  

使用方法:hadoop fs -appendToFile <localsrc> ... <dst>

功能:追加一个文件到已经存在的文件末尾。

示例:hadoop fs -appendToFile localfile /hadoop/hadoopfile

6cat   

使用方法:hadoop fs -cat [-ignoreCrc] URI [URI ...]

功能:显示文件内容到 stdout

示例:hadoop fs -cat /hadoop/hadoopfile

7tail

使用方法:hadoop fs -tail [-f] URI 

功能:将文件的最后一千字节内容显示到 stdout

-f 选项将在文件增长时输出附加数据。

示例:hadoop fs -tail /hadoop/hadoopfile

8chgrp 

使用方法:hadoop fs -chgrp [-R] GROUP URI [URI ...]

功能:更改文件组的关联。用户必须是文件的所有者,否则是超级用户。

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

示例:hadoop fs -chgrp othergroup /hadoop/hadoopfile

9chmod

功能:改变文件的权限。使用-R 将使改变在目录结构下递归进行。

示例:hadoop fs -chmod 666 /hadoop/hadoopfile

10chown

功能:改变文件的拥有者。使用-R  将使改变在目录结构下递归进行。

示例 :hadoop fs -chown someuser:somegrp /hadoop/hadoopfile

11copyFromLocal

使用方法:hadoop fs -copyFromLocal <localsrc> URI

功能:从本地文件系统中拷贝文件到 hdfs 路径去 。

示例:hadoop fs -copyFromLocal /root/1.txt /

12copyToLocal        

功能:从 hdfs 拷贝到本地 。

示例:hadoop fs -copyToLocal /aaa/jdk.tar.gz

13cp               

功能:从 hdfs 的一个路径拷贝 hdfs 的另一个路径。

示例:hadoop fs -cp /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2

14mv                                     

功能:在 hdfs 目录中移动文件。

示例:hadoop fs -mv /aaa/jdk.tar.gz /

15getmerge     

功能:合并下载多个文件。

示例:比如hdfs 的目录/aaa/下有多个文件:log.1, log.2,log.3,... hadoop fs -getmerge /aaa/log.* ./log.sum

16rm                 

功能:删除指定的文件。只删除非空目录和文件。-r 递归删除。

示例:hadoop fs -rm -r /aaa/bbb/

17df                

功能:统计文件系统的可用空间信息。

示例:hadoop fs -df -h /

18du  

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

示例:hadoop fs -du /user/hadoop/dir1

19setrep                 

功能:改变一个文件的副本系数。-R 选项用于递归改变目录下所有文件的副本系数。

示例:hadoop fs -setrep -w 3 -R /user/hadoop/dir1

关于HDFS有哪些基本操作问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI