HDFS 的 shell操作
创始人
2024-04-10 18:09:43
0

文章目录

  • 前言
  • 一、基本语法
  • 二、创建目录
  • 三、上传
    • 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的默认进行调度,原则上,哪个节点离文件越近,副本存在哪个节点。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...