Hadoop三大组件之HDFS(二)

embedded/2024/10/9 16:24:03/

HDFS 常用操作命令

Hadoop 分布式文件系统 (HDFS) 提供了灵活且高效的文件管理方式,类似于 Linux 文件系统。本文将介绍常用的 HDFS 操作命令,帮助您更好地掌握 HDFS 的基本操作。

1. 查看 HDFS 内容

HDFS 的目录结构与 Linux 类似,顶层目录为 /

1.1 通过浏览器查看

可以通过以下 URL 在浏览器中查看 HDFS 内容:

http://<服务器IP>:50070 #低版本
http://<服务器IP>:9870 #高版本

详细端口区别可以查看本专栏hadoop第一篇内容

hadoop_fs__hdfs_fs__15">1.2 通过 HDFS 命令查看(hadoop fs 与 hdfs fs 完全相同)

  • 列出根目录内容:

    hadoop fs -ls /
    
  • 列出特定用户目录及其子目录:

    hadoop fs -ls -R /user/username
    

2. 管理 HDFS 文件系统

假设需要操作的 HDFS 路径为 /user/username

2.1 创建目录

  • 创建新目录:

    hadoop fs -mkdir -p /user/username/myfolder
    

    mkdir会在 /user/username 目录下创建一个名为 myfolder 的新目录。如果中间的路径不存在,-p 选项会确保所有必要的父目录都被创建

  • 创建空文件:

    hadoop fs -touchz /user/username/myfolder/emptyfile.txt
    

2.2 本地(正在操作的机器 如Linux)上传文件到 HDFS put

2.2.1 从本地移动文件到 HDFS
  • 剪切并粘贴文件:
    hadoop fs -moveFromLocal /home/user/localfile.txt /user/username/myfolder
    
2.2.2 从本地复制上传文件到 HDFS
  • 拷贝文件:
    hadoop fs -copyFromLocal sample.txt /user/username/myfolder
    
2.2.3 使用 put 上传文件 (常用)
  • 使用 put 命令上传文件,等同于copyFromLocal
    hadoop fs -put sample.txt /user/username/myfolder
    
2.2.4 追加文件到已存在的文件末尾
  • 可以使用 appendToFile 命令将本地文件的内容追加到已经存在的 HDFS 文件末尾。注意,此操作只支持将本地文件追加到 HDFS 文件,不能直接在 HDFS 文件之间追加内容。
    hadoop fs -appendToFile  new_data.txt /user/username/existing_file.txt
    

2.3 从 HDFS 下载文件到本地 get

2.3.1 从 HDFS 拷贝下载到本地
  • 拷贝文件到本地目录:
    hadoop fs -copyToLocal /user/username/myfolder/sample.txt  ./
    
2.3.2 使用 get 下载文件 (常用)
  • 使用 get命令下载文件,等同于copyToLocal
    hadoop fs -get /user/username/myfolder/anotherfile.txt  ./
    

3. HDFS 直接操作

3.1 显示文件内容

  • 显示文件内容:
    hadoop fs -cat /user/username/myfolder/sample.txt
    

3.2 修改文件权限

  • 修改文件权限(基本用不到):
    hadoop fs -chmod 755 /user/username/myfolder/sample.txt
    

3.3 拷贝文件

  • 拷贝文件到新位置:
    hadoop fs -cp /user/username/myfolder/sample.txt /user/username/myfolder/copy_sample.txt
    

3.4 移动文件

  • 移动或重命名文件:
    hadoop fs -mv /user/username/myfolder/sample.txt /user/username/myfolder/renamed_sample.txt
    

3.5 显示文件末尾内容

  • 显示文件的最后 1KB 数据:
    hadoop fs -tail /user/username/myfolder/anotherfile.txt
    

3.6 删除文件或文件夹

  • 删除文件:

    hadoop fs -rm /user/username/myfolder/oldfile.txt
    
  • 递归删除文件夹及其内容:

    hadoop fs -rm -r /user/username/myfolder/old_folder
    

    使用 -r 选项可以使 Hadoop 递归地检查该文件夹中的所有文件和子文件夹并将其一并删除。如果没有 -r 选项,Hadoop 将不会删除文件夹(即使文件夹为空),因为-rm只处理单个文件的删除,与Linux略有不同。

3.7 统计文件夹大小信息

  • 统计文件夹大小:
    hadoop fs -du -s -h /user/username/myfolder
    

http://www.ppmy.cn/embedded/120804.html

相关文章

el-input仅限输入数字 (输入框仅支持输入数字)

需求&#xff1a;日常开发中会遇到输入框只能输入数字的功能。常用的方法有下面几种 方式1 (将输入框类型改成number) <el-input v-model"number" type"number"/>方式2 (使用正则控制) 推荐使用该方式 <el-input v-model"value1" pla…

【机器学习】生成对抗网络(GAN)——生成新数据的神经网络

生成对抗网络&#xff08;Generative Adversarial Networks&#xff0c;简称GAN&#xff09;是一种创新的神经网络结构&#xff0c;近年来在机器学习和人工智能领域引起了广泛的关注。GAN的核心思想是通过两个神经网络的对抗性训练&#xff0c;生成高质量的、与真实数据相似的新…

前端BOM常用操作

BOM操作常用命令详解及代码案例 BOM&#xff08;Browser Object Model&#xff09;是浏览器对象模型&#xff0c;是浏览器提供的JavaScript操作浏览器的API。BOM提供了与网页无关的浏览器的功能对象&#xff0c;虽然没有正式的标准&#xff0c;但现代浏览器已经几乎实现了Java…

【优选算法之哈希表】No.11--- 经典哈希表算法

文章目录 前言一、哈希表简介1.1 什么是哈希表1.2 哈希表的用途1.3 什么时候使用哈希表1.4 怎么用哈希表 二、哈希表示例2.1 两数之和2.2 判定是否互为字符重排2.3 存在重复元素2.4 存在重复元素 II2.5 字⺟异位词分组 前言 &#x1f467;个人主页&#xff1a;小沈YO. &#x1…

如何使用Kimi编写商品管理设计文档:包含流程图和用例图

如何使用Kimi编写商品管理设计文档&#xff1a;包含流程图和用例图 在软件开发项目中&#xff0c;商品管理系统是一个常见的需求。它涉及到商品的添加、编辑、删除、查询以及库存管理等功能。编写商品管理设计文档是确保项目顺利进行的关键步骤。以下是如何使用Kimi编写商品管…

GitHub每日最火火火项目(10.1)

项目名称&#xff1a;mediar-ai / screenpipe 项目介绍&#xff1a;“mediar-ai / screenpipe”是一个具有创新性的项目。它提供了 24/7 的本地 AI 屏幕和麦克风录制功能&#xff0c;让用户能够构建具有完整上下文的 AI 应用。该项目可作为 Rewind.ai 的替代方案&#xff0c;与…

Python的异步编程

什么是协程&#xff1f; 协程不是计算机系统提供&#xff0c;程序员人为创造。 协程也可以被称为微线程&#xff0c;是一种用户态内的上下文切换技术。简而言之&#xff0c;其实就是通过一个线程实现代码块相互切换执行。 实现协程有那么几种方法&#xff1a; greenlet&…

C# 加载引用 XAML cs中动态加载xaml xaml中引用xaml

C# cs代码中加载 XAML 1、全局加载 ResourceDictionary languageResDic new ResourceDictionary(); languageResDic.Source new Uri("View/Theme.xaml", UriKind.RelativeOrAbsolute); this.Resources.MergedDictionaries.Add(languageResDic);2、动态加载外部xa…