HDFS 的 shell操作
创始人
2024-04-10 19:24:19

文章目录

  • 前言
  • 一、基本语法
  • 二、创建目录
  • 三、上传
    • moveFromLocal
    • -copyFromLocal
    • -put
    • -appendToFile
  • 四、下载
    • -copyToLocal
    • -get
  • 五、HDFS直接操作
    • -ls
    • -cat
    • -chgrp、-chmod、-chown
    • -mkdir
    • -cp
    • -mv
    • -tail
    • -rm
    • rm -r
    • -du
    • -setrep


前言

HDFS的shell操作很多跟linux的shell语法是比较相近,可以很快的学会,本文使用案例,一边演示,一边来学习命令。


一、基本语法

HDFS在最最基础的东西,提供了两种写法

hadoop fs 具体命令
hdfs dfs 具体命令

这两个是完全一样的

二、创建目录

hadoop fs -mkdir /sanguo
使用浏览器查看一下
输入> http://hadoop102:9870/

三、上传

moveFromLocal

从本地剪切粘贴到HDFS

[tom@hadoop102 ~]$ cd /opt/module/hadoop-3.3.4/
[tom@hadoop102 hadoop-3.3.4]$ vim shuguo.txt[tom@hadoop102 hadoop-3.3.4]$ hadoop fs -moveFromLocal ./shuguo.txt /sanguo 

shuguo.txt里面的内容在这里插入图片描述
可以看到本地已经没有shuguo.txt文件了
在这里插入图片描述
来到浏览器,输入

http://hadoop102:9870

进入daosanguo里面,就能看到我们的shuguo.txt文件了
在这里插入图片描述

-copyFromLocal

从本地复制粘贴冬奥HDFS里面

[tom@hadoop102 hadoop-3.3.4]$ vim weiguo.txt
[tom@hadoop102 hadoop-3.3.4]$ hadoop fs -copyFromLocal ./weiguo.txt /sanguo

weiguo.txt里面的内容
在这里插入图片描述
因为我们使用的是copy,所以本地还是有weiguo.txt文件的

在这里插入图片描述

-put

put 命令等同与copyFromLocal
可以无缝衔接(把copyFromLocal换成put就行了)

[tom@hadoop102 hadoop-3.3.4]$ vim wuguo.txt
[tom@hadoop102 hadoop-3.3.4]$ hadoop fs -put ./wuguo.txt /sanguo

在这里插入图片描述

-appendToFile

追加一个文件到已经存在的文件末尾

演示:创建liubei,txt输入liubei,把liubei.txt追加到shuguo.txt里面

[tom@hadoop102 hadoop-3.3.4]$ vim liubei.txt
[tom@hadoop102 hadoop-3.3.4]$ hadoop fs -appendToFile ./liubei.txt /sanguo/shuguo

在这里插入图片描述
来到浏览器
进入sanguo目录(点一下名字就进去了),找到shuguo.txt ,点击

在这里插入图片描述

见下图,点击这里,就能看到里面的内容了,也就是追加上了
在这里插入图片描述

四、下载

-copyToLocal

将文件从HDFS拷贝到本地
注意:在保存的时候还可以修改名字
在这里插入图片描述

-get

等同于copyToLocal,生产环境更习惯用get
在这里插入图片描述

五、HDFS直接操作

注意
下面的命令与linux的用法相同,这里不做过多的演示
如果不会,请自行去把linux给看了(也可以看看我写的linux 博文)

-ls

用法与linux相同

hadoop fs -ls 路径

在这里插入图片描述

-cat

用法与linux相同,

hadoop fs -cat 文件路径

在这里插入图片描述

-chgrp、-chmod、-chown

用法与linux相同
在这里插入图片描述

在这里插入图片描述

-mkdir

在这里插入图片描述

-cp

在这里插入图片描述

-mv

在这里插入图片描述

在这里插入图片描述

-tail

这里还是要提醒一下,这个是查看文件末尾的1kb内容
在这里插入图片描述

-rm

在这里插入图片描述

rm -r

在这里插入图片描述

-du

统计文件夹大小
第一个数字指代总文件的大小
第二个数字代表占了多少磁盘空间
在这里插入图片描述
在这里插入图片描述

-setrep

设置HDFS中文件的副本数量
在这里插入图片描述

**注意!!!**这里我们设置了10个副本数量,但是真的能否有10个副本,取决于DataNode的数量。目前,我们只有三台设备,最多也就是3个副本。只有节点数增加到10,副本数才能达到10。

还有关于副本存储节点的问题
假设我们设置某个文件的副本为2,那么这2个副本在这3个节点中应该存在哪2个节点呢?
这个是hadoop的默认进行调度,原则上,哪个节点离文件越近,副本存在哪个节点。

相关内容

热门资讯

名师工程“传帮带”精准提质家教... (来源:中国妇女报)转自:中国妇女报  □ 中国妇女报全媒体记者 姚改改  □ 陈彦冰  家庭教育的...
最新或2023(历届)高考39... 沈阳城市建设学院辽宁本科第三批55342(第三批)397查看辽宁师范大学海华学院辽宁本科第三批553...
最新或2023(历届)高考39... 山西工商学院山西本科第三批382查看湖南应用技术学院湖南本科第三批393查看广西外国语学院广西本科第...
最新或2023(历届)高考39... 重庆工商大学派斯学院重庆本科第三批390查看石家庄经济学院华信学院河北本科第三批397查看长春光华学...
最新或2023(历届)高考39... 沈阳工学院辽宁本科第三批393查看辽宁师范大学海华学院辽宁本科第三批384查看武汉纺织大学外经贸学院...