hdfs命令行操作

news2024/10/3 10:37:46

文章目录

    • 1. 对文件夹进行操作
      • 1.1 ls:对路径进行访问
      • 1.2 mkdir:对路径进行创建
      • 1.3 rm:对路径进行删除
    • 2.对文件进行操作
      • 2.1在文件系统中创建空文件
      • 2.2上传本地文件到hdfs上
      • 2.3 从hdfs上下载文件到本地路径
      • 2.4 查看hdfs 上的文件内容
      • 2.5 对hdfs上的文件进行复制
      • 2.6 追加本地文件内容到hdfs文件中
      • 2.7 将hdfs上的多个文件合并成一个文件
      • 2.8 修改文件的权限
    • 3. 判断操作
      • 3.1 使用test命令进行判断

1. 对文件夹进行操作

1.1 ls:对路径进行访问

使用ls命令可以查看文件系统中的目录和文件
hadoop fs -ls 需要被查看的目录

-- 查看hdfs上的根目录
hadoop fs -ls  /

-R 代表递归查询
hadoop fs -ls -R /


1.2 mkdir:对路径进行创建

使用mkdir命令可以在文件系统中创建目录
hadoop fs -mkdir 需要创建的目录

-- 在hdfs根路径下创建test01目录
hadoop fs -mkdir /test01

-p 代表递归创建目录
hadoop fs -mkdir -p /study/test

在这里插入图片描述

1.3 rm:对路径进行删除

使用rm命令可以在文件系统中删除目录或者文件

hadoop fs -rm 需要删除的文件
-r 递归删除目录

-- 删除/test01目录
hadoop fs -rm -r /test01

在这里插入图片描述

2.对文件进行操作

2.1在文件系统中创建空文件

使用touch和touchz命令可以在文件系统中创建空文件

-- 在根路径下创建touch.txt文件

hadoop fs -touch /touch.txt

hadoop fs -touchz /touchz.txt

在这里插入图片描述

2.2上传本地文件到hdfs上

使用put命令进行本地文件上传,上传完成后,本地文件依然保留

hadoop fs -put 本地文件路径  上传的hdfs文件路径

-- 上传本地路径/opt/file/put.txt到hdfs上的根路径
mkdir /opt/file/
vi /opt/file/put.txt 
hadoop fs -put /opt/file/put.txt  /

使用moveFromLocal命令也可以进行本地文件上传,但上传完成后,本地文件被会删除

hadoop fs -moveFromLocal 本地文件路径 上传的hdfs文件路径

-- 上传本地路径/opt/file/moveFromLocal.txt到hdfs上的根路径

vi /opt/file/moveFromLocal.txt 
hadoop fs -moveFromLocal /opt/file/moveFromLocal.txt /

在这里插入图片描述

查看上传结果:

在这里插入图片描述

在这里插入图片描述

2.3 从hdfs上下载文件到本地路径

使用get命令进行下载

hadoop fs -get hdfs上的文件路径  文件下载后的本地路径

-- 下载hdfs上:  /moveFromLocal.txt到本地路径/opt/file

hadoop fs -get  /moveFromLocal.txt  /opt/file

2.4 查看hdfs 上的文件内容

使用cat命令进行文件内容查看

hadoop fs -cat 要查看的文件

-- 查看/put.txt文件中的内容

hadoop fs -cat /put.txt

cat命令也可以同时查看多个文件,多个文件路径使用空格进行分割,多个文件内容会被合并依次输出

hadoop fs -cat 要查看的文件1  要查看的文件2 ...
hadoop fs -cat  /moveFromLoca1.txt  /put.txt

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.5 对hdfs上的文件进行复制

使用cp命令可以复制hdfs上的文件到另一位置,在复制过程中可以对文件名进行修改,复制完成后源文件依然存在

hadoop fs -cp 源文件的路径 复制后的路径和文件名

-- 复制/put.txt到/test目录中 文件名不变
hadoop fs -cp /put.txt /test/put.txt

-- 复制/put.txt到/test目录中文件名修改为cp.txt
hadoop fs -cp /put.txt /test/cp.txt

使用mv命令也可以复制hdfs上的文件到另一位置,在复制过程中可以对文件名进行修改,复制完成后源文件会被删除

hadoop fs -mv 源文件的路径 复制后的路径和文件名
-- 复制/moveFromLocal.txt到/test目录下文件名修改为mv.txt

hadoop fs -mv /moveFromLocal.txt  /test/mv.txt

2.6 追加本地文件内容到hdfs文件中

使用appendToFile命令进行内容追加

hadoop fs -appendToFile 本地文件路径 要追加内容的hdfs文件路径

-- 将本地/opt/file/append.txt中的内容追加到hdfs上的/test/mv.txt中
vi /opt/file/append.txt
hadoop fs -appendToFile /opt/file/append.txt /test/mv.txt

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.7 将hdfs上的多个文件合并成一个文件

使用getmerge命令合并多文件

-- 将hdfs上的/test目录中所有文件后缀为txt的文件,合并到本地/opt/file/getmerge.txt文件中
hadoop fs -getmerge /test/*.txt /opt/file/getmerge.txt

在这里插入图片描述

在这里插入图片描述

2.8 修改文件的权限

权限解读,如:
对a.doc 的权限为:
-rw-r–r–
可以看成
- rw- r-- r–

第一个-: 代表为文件
第一组rw-: 代表当前用户root的权限, root用户对该文件拥有读和写的权限而没有执行权限
第二组r–: 代表当前用户所属的组的权限, root组中用户对该文件只拥有读的权限
第三组r–: 代表其他用户的权限,其他用户对该文件只拥有读的权限

权限规则: 读的权限为4 写的权限为2 执行的权限为1

更改:chmod 764 /opt/file/a.doc

- rwxrw-r–

使用chmod命令进行文件权限的修改

hadoop fs -chmod 777 /touch.txt

在这里插入图片描述

3. 判断操作

3.1 使用test命令进行判断

-- 判断hdfs上的文件是否存在
hadoop fs -test -e /touch.txt
echo $?

-- 判断hdfs上的路径是否为目录
hadoop fs -test -d /test
echo $?

-- 判断hdfs上的文件是否为空
hadoop fs -test -z /touch.txt
echo $?

命令执行后,可以使用echo $? 查看命令执行结果
0:true 1:false

在这里插入图片描述

其他文章:Hadoop复习回顾https://blog.csdn.net/m0_48170265/article/details/130035727

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

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

相关文章

微服务·入门·贰——注册中心nacos、eureka

文章目录1. 微服务问题解决服务治理问题1.1 问题抛出1.2 解决方法2 Eureka注册中心2.1 Eureka解决的问题2.2 Eureka的结构和作用2.2.1 Eureka的作用2.2.2 order-service如何得知user-service实例地址 ?2.2.3 order-service如何从多个user-service实例中选择具体实例…

家政服务小程序实战开发教程019-我的预约功能(已完结)

我们上一篇讲解了用户注册的功能,注册完毕后页面需要显示用户的头像和昵称,并显示我的预约的菜单,本篇我们介绍一下如何开发。 1 显示用户头像和昵称 在未注册时我们显示了一个默认的头像,已注册需要显示用户的头像。思路是将未…

【零基础入门 Nginx】——万字文章通俗易懂

一、Nginx 简介 1️⃣ Nginx 概述 Nginx(Engine X) 是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强。同时也提供了IMAP/POP3/SMTP服务 nginx可以作为静态页面的web服务器,同时还支持CGI协议的动态…

WebRTC 系列(二、本地通话,H5、Android、iOS)

WebRTC 系列(一、简介)​​​​​​​ 一、整体流程 有了上一篇 WebRTC 简介的基础,我们知道了 WebRTC 的工作流程,接下来就是需要用代码去实现这个流程了。对于不同端,实现起来的难易程度可能略微不同(实…

RHCE第二次作业ssh远程连接和NTP时间服务器

1.配置ntp时间服务器,确保客户端主机能和服务主机同步时间 在服务器准备工作查看服务是否开启,查看是否运行 同步时间,编辑/etc/chrony.conf,层级优先级10,在允许客户机。 暂时关闭防火墙,关闭服务后,重启…

vue3-element-plus表单校验和多选表格table的基本使用

表单校验 <script setup> import { ref } from "vue"; // 登录的表单数据(绑定到最外层的from标签上) //里面的每个属性都与element-plus的表单标签进行双向绑定,具体可以看html代码 const loginForm ref({username: "",password: "",lo…

双向可控硅详细用法说明

可控硅作为功率开关器件&#xff0c;在各种需要控制功率的电子产品中经常用到&#xff0c;我所涉及的行业为家电产品研发&#xff0c;比如发热丝、发热管的控温&#xff0c;或者AC电机、水泵的控速等&#xff1b;由于双向可控硅是在单向可控硅的基础上发展而来且应用场景更广&a…

ucgui的触摸执行过程

在STM32上调试ucosucguI的触摸时&#xff0c;显示上下左右中5个button&#xff0c;但是按上button时触发的却是右button&#xff0c;调试发现显示区域大小正常&#xff0c;触摸区域大小正常。但就是触摸区域无法与实际的button相对应。 分析原因可能是xy轴不匹配&#xff0c;那…

手撕深度学习中的优化器

深度学习中的优化算法采用的原理是梯度下降法&#xff0c;选取适当的初值params&#xff0c;不断迭代&#xff0c;进行目标函数的极小化&#xff0c;直到收敛。由于负梯度方向时使函数值下降最快的方向&#xff0c;在迭代的每一步&#xff0c;以负梯度方向更新params的值&#…

web前端笔记

HTML(安装live server插件) 我们上网时所看到的所有内容其实就是body里面的内容&#xff01; &#xff01; tab 快速生成一个html模板&#xff1b; https://www.runoob.com/tags/html-elementsdoctypes.html html的菜鸟教程&#xff01; html中的元素分为两种&#xff0c;一种…

广州蓝景分享—13个Web开发人员都知道的基本JavaScript函数

各位编程爱好者&#xff0c;今天由小蓝与大家分享13个基本的JavaScript 函数&#xff0c;如果您是 Web前端开发人员&#xff0c;您应该熟悉这些函数。 您可以将本文所有 JavaScript 函数加入收藏至您的工具箱&#xff0c;以便在您的软件项目中尽可能使用这些片段。 1. 检索任…

恐怖的低代码平台,我 All in 了!

本文目录一、低代码平台是什么&#xff1f;二、目前低代码产品平台是如何分类的&#xff1f;三、低代码平台是怎么互相比较的&#xff1f;一个比喻就明白了&#xff01;四、iVX平台的恐怖优势&#xff01;我 All in 了&#xff01;五、iVX的学习成本&#xff1f;总结&#xff1…

百度CTO王海峰做客《中国经济大讲堂》:文心一言,读书破万亿

当下&#xff0c;大语言模型热度空前&#xff0c;诸如文心一言、ChatGPT 等已经能够与人对话互动、回答问题、协助创作&#xff0c;逐渐应用于人们的工作和生活&#xff0c;也引发了社会热议。近日&#xff0c;百度首席技术官、深度学习技术及应用国家工程研究中心主任王海峰再…

asp.net Core 6 从空建立一个MVC项目,Razor组件使用

Razor组件使用MVC项目创建创建空的Web项目添加MVC框架Razor组件使用准备封装Razor组件MVC项目创建 创建一个空的项目&#xff0c;然后添加MVC。 创建空的Web项目 添加MVC框架 1.添加文件夹 2.添加控制器 3.添加界面 4.修改program.cs文件内容 //原生的 //var builder …

python入门:cl.exe‘ failed with exit status 2错误通用解决方案

文章目录 错误一错误二pypi.org独立安装正确安装错误一 error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/ 这个错误在windows系统上安装python工…

用64位的plsql developer 连接虚拟机中的64位oracle数据库

背景&#xff1a;为了学习oracle&#xff0c;我在虚拟机上安装了oracle。并在实体机上安装了oracle客户端及plsql developer。 开始之前&#xff0c;先回答两个问题 为什么不在本机安装oracle? 因为oracle比较消耗资源&#xff0c;而我不会一直用&#xff0c;所以放到虚拟机里…

使用VMware虚拟机创建Ubuntu的linux系统,用Xshell连接这个系统,VScode作为编辑器时遇到的问题

使用VMware虚拟机创建Ubuntu的linux系统&#xff0c;用Xshell连接这个系统&#xff0c;VScode作为编辑器时遇到的问题1.软件2.Xshell和Xftp软件的使用3.VScode中安装了Remote Development扩展之后&#xff0c;点击远程资源管理器&#xff0c;下拉框里没有SSH-Targets4.将VScode…

Coremail AI技术发展前生今世

2023年3月15日凌晨&#xff0c;OpenAI发布大型多模态模型GPT-4&#xff0c;正式宣告AI迈入新的“黄金时代”。作为邮件安全厂商&#xff0c;Coremail不禁思索&#xff0c;在当今科技高速发展的节点上&#xff0c;如何将此类大型多模态模型落地至具体的邮件安全防护&#xff1f;…

PostgreSQL 系统表相关技术栈 实现原理(系统表初始化关系模型,SysCache RelCache)

文章目录前言基本介绍OIDpg_classpg_typepg_attribute系统表关系初始化编译阶段Initdb 阶段系统表的访问SysCache初始化 & 基本结构查找 & 插入 & 扩容RelCache初始化pg_filenode.mappg_internal.init初始化完整步骤dynahash 可扩展hash表extendible hashextendibl…

基于国产 FPGA + DSP+1553B总线 的大气数据测量装置的设计与实现

大气数据可供飞行器的控制管理系统使用&#xff0c;为飞行器提供飞行指导&#xff0c;因此实时精准 地获取大气数据在飞行器飞行过程中至关重要。本文设计并实现了一种基于 FPGA 和 DSP 的大气数据测量装置。测量装置包含五个压力传感器及两个温度传感器&#xff0c;可实时获取…