HDFS 基本 shell 操作

news2025/7/22 21:38:22

HDFS 基本 shell 操作

  • 1.1 创建目录
  • 1.2 上传指令
  • 1.3 创建空文件
  • 1.4 向分布式文件系统中的文件里追加内容
  • 1.5 查看指令
  • 1.6 下载指令
  • 1.7 合并下载
  • 1.8 移动hdfs中的文件
  • 1.9 复制hdfs中的文件到hdfs的另一个目录
  • 1.10 删除命令
  • 1.11 查看磁盘利用率和文件大小
  • 1.12 修改权限
  • 1.13 修改文件的副本数
  • 1.14 查看文件的状态
  • 1.15 测试

1.1 创建目录

调用格式:

hdfs dfs -mkdir (-p)  /目录

例如:

hdfs dfs -mkdir /data
hdfs dfs -mkdir -p /data/a/b/c

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

1.2 上传指令

调用格式:

hdfs dfs -put /本地文件  /分布式文件系统路径

注意: 直接写/是省略了文件系统的名称hdfs://ip:port。
例如:

hdfs dfs -put /root/a.txt /data/    # root 下的 a.txt 上传到 /data
hdfs dfs -put /root/logs/* /data/   # logs 下的所有文件上传到 /data

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

1.3 创建空文件

调用格式:

hdfs dfs -touchz  /系统路径/文件名

例如:

hdfs dfs -touchz  /hadooptest.txt

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

1.4 向分布式文件系统中的文件里追加内容

调用格式:

hdfs dfs -appendToFile  本地文件     hdfs上的文件
注意:
1)不支持在中间随意增删改操作
2)往空文件中追加就相当于直接写文件,所以能追加进去

本地文件 hello1.txt 的内容追加到 hdfs 文件 hello.txt 的后面操作如下:

在这里插入图片描述
原 hello.txt:hello world
原 hello1.txt:hello
追加的 hello.txt 中内容如下

在这里插入图片描述

1.5 查看指令

查看分布式文件系统的目录里内容

调用格式:hdfs dfs -ls /

在这里插入图片描述

查看分布式文件系统的文件内容

调用格式:hdfs dfs -cat /xxx.txt

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

查看分布式文件系统的文件内容

调用格式:hdfs dfs -tail /xxx.txt
注意:默认最多查看1000行

1.6 下载指令

hdfs dfs -copyToLocal  hdfs上的文件 本地路径
注意:本地路径的文件夹可以不存在
hdfs dfs -moveToLocal hdfs上的文件 本地路径
注意:从hdfs的某个路径将数据剪切到本地,已经被遗弃了
hdfs dfs -get hdfs上的文件 本地路径
调用格式:同copyToLoca

1.7 合并下载

调用格式:hdfs dfs -getmerge  hdfs上面的路径   本地的路径    
实例:hdfs dfs -getmerge /data/*.txt /root/c.txt(将hdfs上的a.txt和b.txt文件合并为c.txt保存在本地root目录下)

1.8 移动hdfs中的文件

调用格式:hdfs dfs -mv /hdfs的路径1  /hdfs的另一个路径2    
实例:hfds dfs -mv /aaa   /bbb  这里是将aaa整体移动到bbb中

原来目录如下:

在这里插入图片描述
把根目录下的 hello1 移动到 /data/ 后的目录如下

在这里插入图片描述

1.9 复制hdfs中的文件到hdfs的另一个目录

调用格式:hdfs dfs -cp 原路径  想要复制到的路径

在这里插入图片描述

1.10 删除命令

hfds dfs -rm [-f] [-r|-R] [-skipTrash] <src> ...
注意:如果删除文件夹需要加-r

hfds dfs -rmdir [--ignore-fail-on-non-empty] <dir> ...
注意:必须是空文件夹,如果非空必须使用rm删除

1.11 查看磁盘利用率和文件大小

hfds dfs -df [-h] [<path> ...]]     #查看分布式系统的磁盘使用情况
hfds dfs -du [-s] [-h] <path> ...	#查看分布式系统上当前路径下文件的情况	-h:human 以人类可读的方式显示

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

1.12 修改权限

跟本地的操作一致,-R是让子目录或文件也进行相应的修改

hfds dfs -chgrp [-R] GROUP PATH...
hfds dfs -chmod [-R] <MODE[,MODE]... | OCTALMODE> PATH...
hfds dfs -chown [-R] [OWNER][:[GROUP]] PATH...

1.13 修改文件的副本数

调用格式:hadoop fs -setrep  3 /   将hdfs根目录及子目录下的内容设置成3个副本
注意:当设置的副本数量与初始化时默认的副本数量不一致时,集群会作出反应,比原来多了会自动进行复制.

1.14 查看文件的状态

命令的作用:当向hdfs上写文件时,可以通过dfs.blocksize配置项来设置文件的block的大小。这就导致了hdfs上的不同的文件block的大小是不相同的。有时候想知道hdfs上某个文件的block大小,可以预先估算一下计算的task的个数。stat的意义:可以查看文件的一些属性。

调用格式:hdfs dfs -stat [format] 文件路径
format的形式:
%b:打印文件的大小(目录大小为0)
%n:打印文件名
%o:打印block的size
%r:打印副本数
%y:utc时间 yyyy-MM-dd HH:mm:ss
%Y:打印自1970年1月1日以来的utc的微秒数
%F:目录打印directory,文件打印regular file
注意:
# 当使用-stat命令但不指定format时,只打印创建时间,相当于%y
# -stat 后面只跟目录,%r,%o等打印的都是0,只有文件才有副本和大小

在这里插入图片描述

1.15 测试

参数说明: 
-e:文件是否存在  存在返回0    
-z:文件是否为空  为空返回0   
-d:是否是路径(目录) ,是返回0
调用格式:hdfs dfs -test -d 文件 
实例:hdfs dfs -test -d /data/hello.txt  && echo "OK"  || echo "no"
解释:测试当前的内容是否是文件夹 ,如果是返回ok,如果不是返回no

在这里插入图片描述

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

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

相关文章

子进程信号继承;kill+raise+alarm+pause+信号发生接收和处理+信号屏蔽

子进程对父进程信号继承情况 fork创建子进程&#xff0c;但子进程没有exec 在fork子进程之前: 如果父进程调用signal设置了某个信号的处理方式的话&#xff0c;那么fork出的子进程会继承父进程对该信号设置的处理 强调:只有在fork之前&#xff0c;父进程所设置的信号处理方式&…

餐厅扫码点餐怎么弄_分享扫码点餐小程序开发制作方法

目前市场上有很多扫码点餐的小程序系统&#xff0c;制作方法有三种&#xff1a; 1、使用微信商家推出的扫码点餐小程序&#xff0c;上传营业执照和食品经营许可证就可以开通使用&#xff0c;然后上传自己的菜品信息就可以了&#xff0c;功能相对比较简单。 2、购买餐饮系统公司…

Redis数据持久化(持久化过程中写操作如何处理)

上一节简单分析了Redis数据持久化方式&#xff0c;点击这里查看。但是要考虑的一个问题就是&#xff0c;在Redis持久化的时候&#xff0c;有新的写入指令时&#xff0c;Redis是如何操作的。 1.RDB方式 1.1.同步方式 即save操作&#xff0c;在Redis执行save操作时&#xff0c;…

systemVerilog的变量类型转换

1 Type Casting 1.1 Verilog使用赋值语句进行变量类型转换 阻塞赋值&#xff1a; 非阻塞赋值&#xff1a; < 1.2 systemVerilog增加了变量类型转换符 变量类型转换符可以在任何时刻对表达式进行类型转换而不像Verilog一样只能发生在赋值语句中 logicint a&#xff0c;y&…

开放式运动耳机怎么样,几款合适的骨传导耳机推荐

骨传导作为新时代的产物&#xff0c; 近些年在耳机市场也是兴起了一波热潮&#xff0c;无论是在日常出勤时佩戴&#xff0c;还是在运动的时候佩戴&#xff0c;骨传导耳机相对于传统耳机来说无疑是越来越符合。其骨传导最大的特点无非就是特殊的传声方式以及无需入耳的佩戴&…

每日一个设计模式之【外观模式】

文章目录每日一个设计模式之【外观模式】☁️前言&#x1f389;&#x1f389;&#x1f389;&#x1f33b;外观模式概述&#x1f331;外观模式的实现&#x1f332;总结每日一个设计模式之【外观模式】 ☁️前言&#x1f389;&#x1f389;&#x1f389; 大家好✋&#xff0c;我…

【c++】四种类型转换的用法

这里写目录标题static_cast 无条件转换&#xff0c;静态类型转换const_cast 去掉类型的const或volatile属性dynamic_cast 有条件转换&#xff0c;动态类型转换&#xff0c;运行时检查类型安全&#xff08;转换失败返回NULL&#xff09;reinterpret_cast 仅重新解释类型&#xf…

离散数学(十二):关系的幂运算与关系的性质

1 关系的幂运算 1&#xff09;幂运算的定义 2&#xff09;幂运算的求法 幂运算有两种求法&#xff0c;基于矩阵的方法和基于关系图的方法。我们之前学过关系的表示方法有三种&#xff1a;集合、矩阵、关系图。那么同样&#xff0c;这些方式也可以运用于关系的计算中。 需…

leaflet教程029: 加载KML文件(代码示例)

第029个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中加载kml文件,将图形显示在地图上。 直接复制下面的 vue+leaflet源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式安装leaflet-plugins本示例引用的kml文件代码示例源代码(共79行)专栏目标…

【容器网络】跨主通信网络实现方法之host-gw实现原理

以上是VXLAN在跨主通信的实现原理&#xff0c;本文讲述的是host-gw的实现原理。 目录 Host-gw 基本原理 flannel的host-gw 数据包传输过程 calico的host-gw calico架构 BGP Peer Node-to-NodeMesh Route Reflector IPIP Host-gw 在容器生态中,提供 Host-gw解决方案…

Seata AT模式TransactionHook会被莫名删除?

前言 兄弟们&#xff0c;刚刚又给seata社区修了一个BUG&#xff0c;有用户提了issue反应TransactionHook在某些情况下不会被调用&#xff1a; 该用户在issue中已经指出了相关问题所在&#xff1a; 下面我们来看一下到底是什么原因导致了上述BUG的产生。 问题定位 根据用户的…

最新JMeter面试题,紧扣面试实际要求,看完拿下20K

JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言&#xff0c;JMeter小巧轻便且免费&#xff0c;逐渐成为了主流的性能测试工具&#xff0c;是测试人员必须要掌握的工具之一。 下面小编给大家总结了22年最新30道关于JMeter的面试题&#xff0c;…

基于51单片机的温度报警系统

功能&#xff1a; 设计一个温度报警系统&#xff0c;可以设定温度上、下限的值&#xff0c;到达设定值时&#xff0c;蜂鸣器响&#xff1b;按键设定有设置、确定、取消、减少与增加功能&#xff0c;LCD1602实时显示相关温度信息 设定界面&#xff1a; 温度超过设定值&#xf…

美国能源部国家实验室将量子计算用于关键能源研究

​ &#xff08;图片来源&#xff1a;网络&#xff09; 量子计算是一种新兴的、强大而有前途的且能快速解决复杂问题的新力量&#xff0c;美国能源部国家实验室NETL的专家正准备将量子计算投入到关键能源的研究课题上&#xff0c;以实现环境可持续和能源应用的无限未来。 量子…

【MySQL | 运维篇】05、MySQL 分库分表之 使用 MyCat 分片

目录 一、垂直拆分 1.1 场景 1.2 准备 1.3 配置 1). schema.xml 2). server.xml 1.4 测试 1). 上传测试SQL脚本到服务器的 /root/sql 目录 2). 执行指令导入测试数据 3). 查询用户的收件人及收件人地址信息(包含省、市、区)。 4). 查询每一笔订单及订单的收件地址信息…

html页面广告5秒之后跳过

首页 - <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width; in…

【51】分布式计算:如果所有人的大脑都联网会怎样?

【计算机组成原理】学习笔记——总目录 【51】分布式计算&#xff1a;如果所有人的大脑都联网会怎样&#xff1f;引言一、从硬件升级到水平扩展二、理解高可用性和单点故障三、总结【个人总结的重点】引言 现在我们每天在用的个人 PC、智能手机&#xff0c;乃至云上的服务器&a…

Nginx反向代理配置

关键字&#xff1a; 反向代理&#xff0c;负载均衡 第一步&#xff1a;官网下载windwos版本nginx 下载地址链接:nginx: download 如下图所示 第二步&#xff1a;解压启动nginx 备注&#xff1a;启动前先查看进程是否占用 80端口 netstat ano | findstr 80tasklist |findstr “…

linux下Nerdtree安装方法

目录 1.下载Nerdtree 2. linux下安装 3. 成功享受吧 1.下载Nerdtree 百度网盘下载&#xff0c;地址为链接&#xff1a;百度网盘 请输入提取码 提取码&#xff1a;07e3 --来自百度网盘超级会员V4的分享 github方式下载&#xff0c;地址为 https://github.com/scrooloose/ner…

【附源码】Python计算机毕业设计蔬果批发网络平台

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…