HDFS的Shell操作(开发重点)

基本语法

方式1: hadoop fs 具体命令

方式2: hdfs dfs 具体命令

常用命令

一共分三大类命令:上传、下载、HDFS直接操作

准备工作

1.启动Hadoop集群

[ranan@hadoop102 hadoop-3.1.3]$ myhadoop.sh start
# 或者也可以像之前一样分别在102,103上使用以下两个命令:
[ranan@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh
[ranana@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh

2.查看命令帮助,如果对某个命令的用法不清楚

[ranan@hadoop102 ~]$ hadoop fs -help rm

3.创建/sanguo文件

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -mkdir /sanguo

后续的命令在该文件夹下操作

上传

-moveFromLocal 剪切

从本地剪切粘贴到HDFS

基本语法:hadoop fs -moveFromLocal 原文件 上传路径

[ranan@hadoop102 hadoop-3.1.3]$ vim shuguo.txt
[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -moveFromLocal ./shuguo.txt /sanguo

-copyFromLocal 拷贝

从本地文件系统中拷贝文件到HDFS路径

基本语法:hadoop fs -copyFromLocal 原文件 上传路径

[ranan@hadoop102 hadoop-3.1.3]$ vim weiguo.txt
[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -copyFromLocal weiguo.txt /sanguo

-put 拷贝 (常用)

等同于copyFromLocal,生产环境更习惯用put

基本语法:hadoop fs -put 原文件 上传路径

[ranan@hadoop102 hadoop-3.1.3]$ vim wuguo.txt
[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -put wuguo.txt /sanguo

-appendToFile 追加

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

文件只能追加,不能修改

基本语法:hadoop fs -appendToFile 追加的文件 被追加的文件

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

下载

-copyToLocal 下载

从HDFS拷贝到本地

基本语法:hadoop fs -copyToLocal HDFS的路径 拷贝到本地的路径

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -copyToLocal /sanguo/shuguo.txt ./

-get 下载

等同于copyToLocal,生产环境更习惯用get

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -get /sanguo/shuguo.txt ./shuguo2.txt

下载的时候可以改文件名

HDFS直接操作

基本使用于linux相同

-ls 显示目录信息

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -ls /sanguo

-cat 显示文件内容

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -cat /sanguo/shuguo.txt

-chgrp/-chmod/-chown/ 修改文件所属权限

和Linux文件系统中的用法一样

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -chgrp ranan /sanguo/shuguo.txt

-mkdir 创建路径

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -mkdir /jinguo

-cp HDFS中拷贝

将shuguo.txt拷贝到/jinguo

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -cp /sanguo/shuguo.txt /jinguo



-mv 在HDFS目录中移动文件

mv oldNameFile newNameFile(重命名)

mv 原目录 目标目录(移动剪切)

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -mv /sanguo/wuguo.txt /jinguo
[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -mv /sanguo/weiguo.txt /jinguo

-tail 显示文件末尾的数据

显示文件末尾1kb的数据。因为只能追加修改,末尾的一般是最新的。

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -tail /jinguo/shuguo.txt

-rm 删除文件/文件夹

删除指令要注意使用

-rm 删除文件或文件夹

-rm -r 递归删除文件夹及文件夹里面的类容

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -rm /sanguo/shuguo.txt
[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -rm -r /sanguo

-du 统计文件夹的大小信息

-s 显示总共的

-h 显示具体的细节

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -du -s /jinguo
[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -du -h /jinguo

-setrep 设置HDFS中文件的副本数量

[ranan@hadoop102 hadoop-3.1.3]$ hadoop fs -setrep 10 /jinguo/shuguo.txt

但是我们只有三台服务器,实际还是只有3个副本。因为每台机器只能存储其一份副本

副本数会记录在 NameNode 的元数据中,如果后续增加服务器,会拷贝副本过去。

HDFS02 HDFS的Shell操作的更多相关文章

  1. Hadoop开发第6期---HDFS的shell操作

    一.HDFS的shell命令简介 我们都知道HDFS 是存取数据的分布式文件系统,那么对HDFS 的操作,就是文件系统的基本操作,比如文件的创建.修改.删除.修改权限等,文件夹的创建.删除.重命名等. ...

  2. 大数据:Hadoop(JDK安装、HDFS伪分布式环境搭建、HDFS 的shell操作)

    所有的内容都来源与 Hadoop 官方文档 一.Hadoop 伪分布式安装步骤 1)JDK安装 解压:tar -zxvf jdk-7u79-linux-x64.tar.gz -C ~/app 添加到系 ...

  3. Hadoop读书笔记(二)HDFS的shell操作

    Hadoop读书笔记(一)Hadoop介绍:http://blog.csdn.net/caicongyang/article/details/39898629 1.shell操作 1.1全部的HDFS ...

  4. HDFS基本shell操作

    在客户端输入Hadoop fs,可以查看所有的,hadoop shell # -help [cmd] //显示命令的帮助信息,如: hadoop fs -help ls # -ls(r) <pa ...

  5. HDFS的shell操作

    bin/hadoop命令操作: namenode -format 格式化文件系统 fs(缩写:FileSystem) 运行一个文件系统的用户客户端 bin/hadoop fs常用命令操作: -ls h ...

  6. [HDFS_2] HDFS 的 Shell 操作

    0. 说明 在 Shell 下完成对 HDFS 的增删改查操作 1. 在 Shell 下完成对 HDFS 的增删改查操作 [1.0 查看帮助] [centos@s101 ~]$ hdfs dfs -h ...

  7. Hadoop框架之HDFS的shell操作

    既然HDFS是存取数据的分布式文件系统,那么对HDFS的操作,就是文件系统的基本操作,比如文件的创建.修改.删除.修改权限等,文件夹的创建.删除.重命名等.对HDFS的操作命令类似于Linux的she ...

  8. Hadoop HDFS的Shell操作实例

    本文发表于本人博客. 我们知道HDFS是Hadoop的分布式文件系统,那既然是文件系统那最起码会有管理文件.文件夹之类的功能吧,这个类似我们的Windows操作系统一样的吧,创建.修改.删除.移动.复 ...

  9. 4 weekend110的hdfs&mapreduce测试 + hdfs的实现机制初始 + hdfs的shell操作 + 无密登陆配置

    Hdfs是根/目录,windows是每一个盘符, 1  从Linux里传一个到,hdfs里去 2  从hdfs里下一个到,linux里去 想从hdfs里,下载到linux, 涨知识,记住,hdfs是建 ...

随机推荐

  1. SI Macro

    获取 buf 里的 symbol cbuf = BufListCount() msg(cbuf) ibuf = 0 while (ibuf < cbuf) { hbuf = BufListIte ...

  2. Zabbix webhook 自定义报警媒介

    场景一:使用企业微信机器人报警 图中的token是:在群组中添加机器人,机器人的webhook地址的key var Wechat = { token: null, to: null, message: ...

  3. DeWeb进阶 :控件开发 --- 1 完成一个纯html的demo

    最近随着DeWeb(以下简称DW)的完善,和群友的应用的深入,已经有网友开始尝试做DeWeb支持控件的开发了! 这太令人兴奋了! 作为DeWeb的开发者,感觉DeWeb的优势之一就是简洁的第三方控件扩 ...

  4. prometheus(4)之alertmanager报警插件

    报警处理流程如下: 1. Prometheus Server监控目标主机上暴露的http接口(这里假设接口A),通过Promethes配置的'scrape_interval'定义的时间间隔,定期采集目 ...

  5. 《手把手教你》系列技巧篇(三十八)-java+ selenium自动化测试-日历时间控件-下篇(详解教程)

    1.简介 理想很丰满现实很骨感,在应用selenium实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这样的操作就 ...

  6. 【java+selenium3】Actions模拟鼠标 (十一)

    一.鼠标操作 WebElement的click()方法可实现元素的点击操作,但是没有提供鼠标的右击/双击/悬停/鼠标拖动等操作.这些操作需要通过Action类提供的方法来实现! Action常用的ap ...

  7. Java多线程| 01 | 线程概述

    Java多线程| 01 | 线程概述 线程相关概念 进程与线程 进程:进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是操作系统进行资源分配与调度的基本单位.可以把进程简单的理解 ...

  8. redis异常:(error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk.

    (error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on d ...

  9. 我罗斯方块最终篇(Player类、Game类)

    我罗斯方块最终篇(Player类.Game类) |--------------------项目GitHub地址--------------------| 目录 我罗斯方块最终篇(Player类.Gam ...

  10. FZU ICPC 2020 寒假训练 3

    P1308 统计单词数 题目描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数.现在,请你编程实现这一功能,具体要求是:给定一 ...