HDFS Shell命令
本期带来的文章是大数据开发-HDFS Shell命令,可能大家会好奇,前面是不是有见过shell命令了,这次怎么还有。注意,这次shell面前还有HDFS,指的是在HDFS存储中进行文件夹和文件操作的命令,下面就开始本章节的内容。
一、概述
HDFS Shell命令允许使用命令行在HDFS存储中进行文件夹和文件操作,如文件夹的增删改查、文件的增删改查等。
Hadoop支持很多Shell命令,比如hadoop fs、hadoop dfs和hdfs dfs都是HDFS最常用的Shell命令,用来查看HDFS文件系统的目录结构、上传和下载数据、创建文件等。这三个命令既有联系有又区别:
hadoop fs:适用于任何不同的文件系统,比如本地文件系统和HDFS文件系统;
hadoop dfs:只能适用于HDFS文件系统;
hdfs dfs:跟hadoop dfs命令的作用一样,也只能适用于HDFS文件系统。
二、命令
在本教程中,统一使用hdfs dfs命令对HDFS进行操作。开始练习hadoop时,打开Linux之后要用 start-dfs.sh 启动HDFS,HDFS不是开机启动的。
hdfs dfs -操作命令 参数
前面的【hdfs dfs -】部分是固定的,后面的【操作命令 参数】部分是变化的
(1)-help:输出这个命令参数
hdfs dfs -help rm
(2)-ls: 显示目录信息
hdfs dfs -ls /
hdfs dfs -ls / 0 #列出根目录中的内容
hdfs dfs -ls -R / #递归列出多层文件夹的内容
(3)-mkdir:在hdfs上创建目录
hdfs dfs -mkdir /abc #创建名为/abc的文件夹
(4)-moveFromLocal从本地剪切粘贴到hdfs
hdfs dfs -moveFromLocal /home/Hadoop/a.txt /aaa/bbb/cc/dd
(5)-moveToLocal:从hdfs剪切粘贴到本地
hdfs dfs -moveToLocal /aaa/bbb/cc/dd /home/Hadoop/a.txt
(6)–appendToFile :追加一个文件(不在HDFS中)到已经存在的文件末尾
hdfs dfs -appendToFile ./hello.txt /hello.txt
(7)-cat :显示文件内容#注意:只能查看文件文件
hdfs dfs -cat /hadoop-daemon.sh
(8)-tail:显示一个文件的末尾
hdfs dfs -tail /weblog/access_log.1
(9)-text:以字符形式打印一个文件的内容
hdfs dfs -text /weblog/access_log.1
(10)-chgrp 、-chmod、-chown:linux文件系统中的用法一样,修改文件所属权限
hdfs dfs -chmod 666 /hello.txt
(11)-copyFromLocal:从本地文件系统中拷贝文件到hdfs路径去
hdfs dfs -copyFromLocal ./jdk.tar.gz /aaa/
(12)-copyToLocal:从hdfs拷贝到本地
hdfs dfs -copyToLocal /aaa/jdk.tar.gz
(13)-cp :从hdfs的一个路径拷贝到hdfs的另一个路径
hdfs dfs -cp /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2
(14)-mv:在hdfs目录中移动文件
hdfs dfs -mv /aaa/jdk.tar.gz /
(15)hdfs dfs -get /abc/hosts ./hosts #把HDFS中的文件下载到本地Linux中
#注意./hosts是下载后保存到本地的位置
(16)-getmerge :合并下载多个文件,比如hdfs的目录 /aaa/下有多个文件:log.1, log.2,log.3,…
hdfs dfs -getmerge /aaa/log.* ./log.sum
(17)-put:把Linux系统中/etc/hosts文件上传到HDFS中
hdfs dfs -put /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2
(18)-rm:删除文件或文件夹
hdfs dfs -rm -r /aaa/bbb/
(19)-rmdir:递归删除文件/文件夹,文件夹中有文件也能删除
hdfs dfs -rmdir /aaa/bbb/ccc
(20)-df :查看HDFS文件系统的磁盘使用情况
hdfs dfs -df -h /
(21)-du查看文件/文件夹的大小
hdfs dfs -du -h /
(22)-count:统计一个指定目录下的文件节点数量
hdfs dfs -count /aaa/
(23)-setrep:设置hdfs中文件的副本数量
hdfs dfs -setrep 3 /aaa/jdk.tar.gz
这里设置的副本数只是记录在namenode的元数据中,是否真的会有这么多副本,还得看datanode的数量。因为目前只有3台设备,最多也就3个副本,只有节点数的增加到10台时,副本数才能达到10。
(24) - expunge :清空hdfs垃圾桶
hdfs dfs -expunge
(25)hdfs dfs -checksum /abc/hosts #查看文件的MD5值
(26)hdfs dfs -find / -name xyz #查找名字为xyz的文件的位置
本章节的内容也是以命令为主,需要自己多花一些时间记下来,这样才能提高工作效率。
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与联系我们,我们会予以更改或删除相关文章,以保证您的权益!此页面下方声明无效!

猜你喜欢LIKE
相关推荐HOT
更多>>
HDFS架构演进之路
当active Namenode出现故障或者宕机的时候,standby会自动切换为新的active Namenode对外提供服务,并且HA对外提供了统一的访问名称,对于用户...详情>>
2022-12-09 15:44:00
大数据开发:Hive小文件合并
Hadoop生态技术体系下,负责大数据存储管理的组件,涉及到HDFS、Hive、Hbase等。Hive作为数据仓库工具,最初的存储还是落地到HDFS上,这其中就...详情>>
2022-12-09 15:42:00
HDFS的故障恢复和高可用
客户端读取文件时,会先校验该信息文件与读取的文件,如果校验出错,便请求到另一DataNode读取数据,同时向NameNode汇报,以删除和复制这个数据...详情>>
2022-12-09 15:41:00
大数据开发:Flink on Yarn原理
这个Container通过Application Master启动进程,Application Master里面运行的是Flink程序,即Flink-Yarn ResourceManager和JobManager。详情>>
2022-12-09 15:39:00
大数据开发基础:Java基础数据类型
在Java基础入门学习阶段,Java基础数据类型无疑是基础当中的重点,掌握基础数据类型,对于后续去理解和掌握更深入的理论,是有紧密的关联性的。...详情>>
2022-12-09 15:38:13大数据培训问答更多>>
新大数据都学什么?5大核心知识必学内容有哪些
新大数据报班多少钱?如何选择培训机构
新人工智能学什么?自学可以成才吗
新数据处理包括哪些内容?是不是所有课程需要分别报课
新大数据分析需要学什么?怎么学比较好
新人工智能专业学什么?人工智能有哪些课程
新大数据数据分析师要学什么?好就业吗
大数据面试题库 更多>>
大数据的五个V是什么?
数据及集群管理(三)
数据及集群管理(二)
数据及集群管理(一)
大数据之hbase的优化读数据方面
大数据之hbase的优化写入数据方面
- 北京校区
- 大连校区
- 广州校区
- 成都校区
- 杭州校区
- 长沙校区
- 合肥校区
- 南京校区
- 上海校区
- 深圳校区
- 武汉校区
- 郑州校区
- 西安校区
- 青岛校区
- 重庆校区
- 太原校区
- 沈阳校区
- 南昌校区
- 哈尔滨校区
