大数据hadoop_HDFS的shell操作(2)

news2024/11/16 21:28:12

文章目录

  • 1. 基本语法
  • 2. hadoop hdfs命令指南
  • 3. 常用命令操作指南
    • 3.1 准备工作
    • 3.2 上传
    • 3.3 下载
    • 3.4 基本操作

1. 基本语法

hadoop fs 具体的命令 或者 hdfs dfs 具体的命令

一般是使用hadoop fs 具体的命令,因为是简单好记,容易理解。

2. hadoop hdfs命令指南

[moxi@hadoop102 hadoop-3.1.3]$ bin/hadoop fs

输入过后,显示以下操作指令

[-appendToFile <localsrc> ... <dst>]
        [-cat [-ignoreCrc] <src> ...]
        [-chgrp [-R] GROUP PATH...]
        [-chmod [-R] <MODE[,MODE]... | OCTALMODE> PATH...]
        [-chown [-R] [OWNER][:[GROUP]] PATH...]
        [-copyFromLocal [-f] [-p] <localsrc> ... <dst>]
        [-copyToLocal [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
        [-count [-q] <path> ...]
        [-cp [-f] [-p] <src> ... <dst>]
        [-df [-h] [<path> ...]]
        [-du [-s] [-h] <path> ...]
        [-get [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
        [-getmerge [-nl] <src> <localdst>]
        [-help [cmd ...]]
        [-ls [-d] [-h] [-R] [<path> ...]]
        [-mkdir [-p] <path> ...]
        [-moveFromLocal <localsrc> ... <dst>]
        [-moveToLocal <src> <localdst>]
        [-mv <src> ... <dst>]
        [-put [-f] [-p] <localsrc> ... <dst>]
        [-rm [-f] [-r|-R] [-skipTrash] <src> ...]
        [-rmdir [--ignore-fail-on-non-empty] <dir> ...]
<acl_spec> <path>]]

3. 常用命令操作指南

3.1 准备工作

(1)启动hadoop集群

[moxi@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh
[moxi@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh

(2)使用指令帮助

例如通过查询指令查询出来要使用的指令,但是不知道这个指令如何操作,这时候可以使用指令帮助。

[moxi@hadoop102 hadoop-3.1.3]$ hadoop fs -help mkdir

image-20221207121547590

3.2 上传

上传操作是指,把本地文件通过指令上传到hdfs上,上传操作可以把本地文件通过剪切或者拷贝的方式上传到hdfs,方法灵活。

(1) -moveFromLocal:从本地剪切到HDFS

[moxi@hadoop102 hadoop-3.1.3]$ vim shuguo.txt
输入:
shuguo

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

(2)-copyFromLocal:从本地拷贝到HDFS

[moxi@hadoop102 hadoop-3.1.3]$ vim weiguo.txt
输入:
weiguo

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

(3)-put:等同于-copyFromLocal,生产环境常用,因为简单

[moxi@hadoop102 hadoop-3.1.3]$ vim wuguo.txt
输入:
wuguo

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

(4)-appendToFFile:追加一个文件到已经存在的文件末尾

[moxi@hadoop102 hadoop-3.1.3]$ vim liubei.txt
输入:
liubei

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

3.3 下载

下载操作,就是把HDFS上的文件下载到本地文件系统

(1)-copyToLoccal:从HDFS拷贝到本地

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

(2)-get等同于copyToLocal,生产环境更习惯用get

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

(3)下载到windows操作

sz 文件名

3.4 基本操作

(1)-ls:显示目录信息

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

(2)-cat:显示文件内容

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

(3)-chgrp、-chmod、-chown:Linux文件系统中的用法一样,修改文件所属权限

[moxi@hadoop102 hadoop-3.1.3]$ hadoop fs  -chmod 666  /sanguo/shuguo.txt
[moxi@hadoop102 hadoop-3.1.3]$ hadoop fs  -chown  moxi:moxi   /sanguo/shuguo.txt

(4) -mkdir:创建文件夹

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

(5) -cp复制操作

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

(6) -mv移动文件

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

(7)-tail:显示文件的末尾1kb的数据

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

(8) rm:删除操作

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

(9) rm -f:递归删除操作

[moxi@hadoop102 hadoop-3.1.3]$ hadoop fs -rm -r /sanguo

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

[moxi@hadoop102 hadoop-3.1.3]$ hadoop fs -du -s -h /jinguo
显示的结果:27  81  /jinguo

[moxi@hadoop102 hadoop-3.1.3]$ hadoop fs -du  -h /jinguo
显示的结果:
14  42  /jinguo/shuguo.txt
7   21   /jinguo/weiguo.txt
6   18   /jinguo/wuguo.tx

(11)-setrep:设置HDFS中文件的副本数量

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

这里设置的副本数只是记录在NameNode的元数据中,是否真的会有这么多副本,还得看DataNode的数量。因为目前只有3台设备,最多也就3个副本,设置10个副本暂时会记录下来,当服务器增加到10台的时候副本数才能达会到10。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/70813.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TypeScript 开发环境搭建

TypeScript是JavaScript类型的超集&#xff0c;它可以编译成纯JavaScript代码&#xff0c;TypeScript可以在任何浏览器&#xff0c;任何计算机和任何操作系统上运行。 目录 依赖环境 搭建步骤 1.新建一个文件夹 2.初始化一个NPM项目 3.安装typescript 包 4.新建一个tscon…

SQLite 基本命令使用方式

本文介绍创建一个简单的数据库&#xff0c;并能够在需要的时间和地点快速使用它们。SQLite 在世界范围内的许多设备中使用。 什么是SQLite&#xff1f; SQLite是一个进程内的库&#xff0c;实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的…

Spring Cloud Alibaba整合Sentinel进行服务熔断降级

一、下载Sentinel Dashboard控制台服务 Releases alibaba/Sentinel GitHub 一样的&#xff0c;根据自己的Spring Cloud Alibaba版本下载相应版本的Sentinel 启动服务&#xff0c;可以指定端口 java -Dserver.port8849 -Dcsp.sentinel.dashboard.serverlocalhost:8849 -Dp…

记录下QT读取串口数据时遇到的问题

一、如果使用QT读取串口数据 使用定时器定时发送信号&#xff0c;然后调用槽函数来读取串口数据&#xff0c;串口数据读取过程加锁。 timer1 startTimer(15); connect(this, SIGNAL(callCapData()), this, SLOT(CapData()));void ecgfrom::timerEvent(QTimerEvent *event) {…

Allegro如何批量把器件放在指定的格点上操作指导

Allegro如何批量把器件放在指定的格点上操作指导 Allegro支持批量把器件放在指定的格点上,具体操作如下 以下图为例,器件在小数点位以后的格点上,如果只是个别器件,只需要切换好格点,并且手动移动下就可以了,如果有大量的器件都是这样,这样会比较费时 选择File-change…

Java中注解的理解

一.什么是注解 1.Annotation是从JDK5开始引入的最新技术 2.Annotation的作用&#xff1a; 1&#xff09;不是程序本身&#xff0c;可以对程序做出解释&#xff0c;(这一点和注释(comment)没什么区别)。 2&#xff09;可以被其他程序&#xff08;比如编译器&#xff09;读取…

【论文随笔】Time-Incremental Learning from Data Using Temporal Logics

[1] E. Aasi, M. Cai, C. I. Vasile, and C. Belta, “Time-Incremental Learning from Data Using Temporal Logics.” arXiv, Dec. 28, 2021. doi: 10.48550/arXiv.2112.14300. 好久没看文献了&#xff0c;来更一篇 Outline time-variant weights of STL weights are learn…

【Windows基础】Windows用户和用户组的管理

一、用户账户 什么是用户账户&#xff1f; 不同的用户身份拥有不同的权限每个用户包含了一个名称和一个密码每一个用户登录系统后&#xff0c;拥有不同的操作权限。为不同的账户赋权限&#xff0c;也就是为不用账户的SID赋权限&#xff01;每个用户都有自己的配置文件(家目录…

opcj1——mac下如何快速搭建Java开发环境

这是我们OPCJ的第一篇&#xff0c;搭建基础的开发环境。我们的服务会不断增加新组件&#xff0c;我们这里先介绍如何快速搭建开发环境。一般来说Java程序员的电脑上总是会有一些已经配置好的idea、git、maven或者其他的&#xff0c;如果有的话&#xff0c;调整一下直接用就行了…

欧科云链对话ChatGPT:Web3会颠覆互联网?

最近&#xff0c;要说什么最火&#xff1f; 身为“当红炸子鸡”的ChatGPT 说第二就没人敢说第一 ChatGPT&#xff0c;是OpenAI基于Ai技术而实现的一个辅助引擎&#xff0c;通过大量的资料学习&#xff0c;打造出一个类似搜索引擎一样可以回答问题的工具。 它的爆火&#xff0c;…

uniapp使用unipush推送及java后台推送代码(含本地打包apk使用unipush推送)

你懂的&#xff0c;又是项目用到了&#xff0c;作为程序猿义无反顾需要定时 “进化” &#xff0c;硬头皮去写&#xff0c;虽然曾经作为android开发者写了很多的推送&#xff0c;但是uniapp的推送也是有所差异的&#xff0c;记录一下&#xff0c;以后留用。 首先uniapp的推送u…

深度学习-Tensorboard可视化面板

文章目录简介安装SummaryWriter新建添加数字运行添加图片添加直方图实战前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 简介 Tensorboard是Tensorflow官方提供的实用可视化工具&#xf…

[附源码]JAVA毕业设计宿舍管理系统(系统+LW)

[附源码]JAVA毕业设计宿舍管理系统&#xff08;系统LW&#xff09; 项目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&…

「微服务系列」微服务框架的介绍

为什么要学习微服务框架知识&#xff1f; 从求知的角度、企业的角度&#xff0c;微服务都是必知必会的&#xff01; 需要学习哪些微服务知识&#xff1f; 传统单点架构&#xff0c;无法承载高并发场景&#xff1b;微服务领域按功能模块&#xff0c;将应用拆分成多个服务。大型…

【JavaScript高级】07-ES5、ES6中实现继承,原型及原型链

ES5、ES6实现继承&#xff0c;原型及原型链理解ES5实现继承对象和函数的原型对象的原型函数的原型new、constructor函数原型上的属性优化通过构造函数创建对象原型链原型链实现的继承借用构造函数继承寄生组合实现继承ES5实现继承 对象和函数的原型 对象的原型 JavaScript当…

C#实现发送钉钉工作通知消息

一、实现效果 实现在钉钉的工作中心里面发送消息(比如发送【文本消息】、【markdown消息】等不同类型的内容),实现效果如下: 二、实现思路 2.1、了解钉钉学习路径图 钉钉开放文档 (dingtalk.com)https://open.dingtalk.com/document/org-roadmap 2.2、学习了解钉钉的接入…

cubeIDE开发, stm32的RS485/232串口通信开发要点

一、stm32串口通信 stm32串口通信一般是指通过UART&#xff08;Universal Asynchronous Receiver/Transmitter&#xff09;通用异步收发传输器传输数据&#xff0c;UART 作为异步串口通信协议的一种&#xff0c;工作原理是将传输数据的每个字符一位接一位地传输&#xff0c;其在…

数据库01_内存分页管理_分段管理_设备管理_IO处理_索引文件结构_文件目录_位示图---软考高级系统架构师008

可以看到数据库方面的考点.在架构里面考4,5分左右 这里只说比较重要的标红的考点. 然后我们来看ER图: 1.首先看一下实体的概念:实体是指的客观存在并相互区别的事物,可以举一个例子,比如一家超市,那么超市经理,员工,部门经理,业务员等等,这都是名词,都是属于实体. 2.然后…

知识图谱-KGE-语义匹配-双线性模型(打分函数用到了双线性函数)-2013:NTN(Neural Tensor Network)

【paper】 Reasoning With Neural Tensor Networks for Knowledge Base Completion 【简介】 本文是斯坦福大学陈丹琦所在团队 2013 年的工作&#xff0c;好像是发表在一个期刊上的。文章提出了用于知识库补全的神经网络框架 NTN&#xff08;Neural Tensor Network&#xff09…

Golang代码质量检查工具GolangCI-Lint(学习笔记)

Golang代码质量检查工具GolangCI-Lint 直接用下面go get的方式会出现报错 go get github.com/golangci/golangci-lint/cmd/golangci-lint解决方法 直接去 https://github.com/golangci/golangci-lint/releases 下载对应版本 go < 1.9 isn’t supported go1.9 is officia…