• 【大数据】HDFS 的常用命令


    1.操作命令

    操作命令是以 hdfs dfs 开头的命令。通过这些命令,用户可以完成 HDFS 文件的 复制删除查找 等操作,Shell 命令的一般格式如下。

    hdfs dfs [通用选项]
    
    • 1

    其中,hdfsHadoop 系统在 Linux 系统中的主命令;dfs 是子命令,表示执行文件系统操作;通用选项由 HDFS 文件操作命令和操作参数组成。

    1.1 创建文件夹

    hdfs dfs -mkdir [-p] <文件路径>
    
    • 1
    • [-p]:表示如果父目录不存在,先创建父目录。

    例如,新建文件夹 /202012721/202012721/dir1。命令如下:

    hdfs dfs -mkdir /202012721
    hdfs dfs -mkdir -p /202012721/dir1
    
    • 1
    • 2

    结果如下:

    在这里插入图片描述

    1.2 列出指定的文件和目录

    hdfs dfs -ls [-d][-h][-R] <文件路径>
    
    • 1
    • [-d]:返回 path
    • [-h]hhuman-readble,表示按照人性化的单位显示文件大小,比如文件显示为 10 MB,而不会显示 10240 KB。
    • [-R]:级联显示 paths 下的文件。

    例如,列出根目录下的文件或目录。命令如下:

    hdfs dfs -ls /
    
    • 1

    结果如下:

    在这里插入图片描述

    1.3 新建文件

    hdfs dfs -touchz <存放路径>
    
    • 1

    例如,在主目录 /202012721/input 下创建大小为 0 0 0 的空文件 file。命令如下:

    hdfs dfs -touchz /202012721/input.txt
    hdfs dfs -ls /202012721
    
    • 1
    • 2

    结果如下:

    在这里插入图片描述

    1.4 上传文件

    hdfs dfs -put [-f] [-p] <本地路径> 
    
    • 1

    或者

    hdfs dfs -copyFromLocal [-f] [-p] [-l] <本地路径> 
    
    • 1

    在这里我们只演示第一个命令。例如,在本地创建一个文件 data.txt 并传到 HDFS 的 /202012721 目录下命令如下:

    hdfs dfs -put data.txt /202012721/data.txt
    
    • 1

    结果如下:

    在这里插入图片描述

    1.5 将本地文件移动到 HDFS

    hdfs dfs -moveFromLocal <本地文件路径>  
    
    • 1

    hdfs dfs -copyFromLocal 命令不同的是,此命令将文件复制到 HDFS 后,本地的文件会被删除。

    例如,我们把本地文件 data2.txt 移动到 HDFS 的 /202012721 命令如下:

    hdfs dfs -moveFromLocal data2.txt /202012721 
    
    • 1

    结果如下:

    在这里插入图片描述

    1.6 下载文件

    hdfs dfs -get [-p]  <本地文件路径>
    
    • 1

    或者

    hdfs dfs -copyToLocal [-p] [-ignoreCrc] [-crc]  <本地文件路径>
    
    • 1

    例如,将 HDFS 中的 /202012721/data.txt 文件下载并保存为本地的 ~/local_data.txt

    hdfs dfs -get /202012721/data.txt ~/local_data.txt
    
    • 1

    /202012721/data2.txt 文件下载到本地目录:

    hdfs dfs -copyToLocal /202012721/data2.txt ~
    
    • 1

    1.7 查看文件

    hdfs dfs -cat [-ignoreCrc] <文件路径>
    
    • 1
    • [-ignoreCrc]:忽略循环检验失败的文件。
    hdfs dfs -text [-ignoreCrc] <文件路径>
    
    • 1
    • text 不仅可以查看文本文件,还可以查看压缩文件和 Avro 序列化的文件。
    hdfs dfs -tail [-f] <文件路径>
    
    • 1
    • [-f]:动态更新显示数据。
    • tail 查看的是最后 1 KB 的文件(Linux 上的 tail 默认查看最后 10 10 10 行记录)。

    例如,查看 /202012721/data.txt。命令如下:

    hdfs dfs -cat /202012721/data.txt
    
    • 1

    结果如下:

    在这里插入图片描述

    1.8 追写文件

    hdfs dfs -appendToFile <本地路径> <目标路径>
    
    • 1

    该命令将 localsrc 指向的本地文件内容写入目标文件 dst。例如,在本地根目录下新建 data3.txt 文件,内容为 hadoop,追加到文件 /202012721/data.txt 中。命令如下:

    hdfs dfs -appendToFile data3.txt /202012721/data.txt
    hdfs dfs -cat /202012721/data.txt
    
    • 1
    • 2

    结果如下:

    在这里插入图片描述

    1.9 删除目录或者文件

    hdfs dfs -rm [-f] [-r] <文件路径>
    
    • 1
    • [-f]:如果要删除的文件不存在,不显示错误信息。
    • [-r/R]:级联删除目录下所有的文件和子目录文件。

    例如,删除 HDFS 中的 /202012721/data2.txt 文件。命令如下:

    hdfs dfs -rm /202012721/data2.txt
    
    • 1

    结果如下:

    在这里插入图片描述

    1.10 显示占用的磁盘空间大小

    按字节显示指定目录所占空间大小。

    hdfs dfs -du [-s] [-h] <文件路径>
    
    • 1
    • [-s]:显示指定目录下文件总的大小。
    • [-h]hhuman-readble,表示按照人性化的单位显示文件大小,比如文件显示为 10 MB,而不会显示 10240 KB。

    例如,显示 HDFS 根目录中 202012721 文件夹下所有文件的大小。命令如下:

    hdfs dfs -du /202012721
    
    • 1

    结果如下:

    在这里插入图片描述

    1.11 HDFS 中的文件复制

    hdfs dfs -cp [-f] [-p | -p[topax]] <原路径> <目标路径>
    
    • 1
    • [-f]:如果目标文件存在,将强行覆盖。
    • [-p]:将保存文件的属性。

    例如,将 HDFS 中的 /202012721/data.txt 复制为 /202012721/data_copy.txt。命令如下:

    hdfs dfs -cp /202012721/data.txt /202012721/data_copy.txt
    
    • 1

    结果如下:

    在这里插入图片描述

    1.12 HDFS 中的文件移动

    hdfs dfs -mv <原路径> <目标路径>
    
    • 1

    例如,将 HDFS 中的 /202012721/data_copy.txt 移动(也可理解为改名)为 /202012721/data2.txt。命令如下:

    hdfs dfs -mv /202012721/data_copy.txt /202012721/data2.txt
    
    • 1

    结果如下:

    在这里插入图片描述

    2.管理命令

    管理命令是以 hdfs dfsadmin 开头的命令。通过这些命令,用户可以管理 HDFS。管理命令的一般格式如下:

    hdfs dfsadmin [通用选项]
    
    • 1

    其中,hdfs 是 Hadoop 系统在 Linux 系统中的主命令;dfsadmin 是子命令,表示执行文件系统管理的操作;通用选项由 HDFS 管理命令和参数组成。

    2.1 报告文件系统的基本信息和统计信息

    hdfs dfsadmin -report
    
    • 1

    结果如下:

    在这里插入图片描述

    2.2 查看拓扑

    hdfs dfsadmin -printTopology
    
    • 1

    结果如下:

    在这里插入图片描述

    3.其他命令

    我们把操作命令 hdfs dfs、管理命令 hdfs dfsadmin 之外的命令称为其他命令。输入 hdfs 查看。

  • 相关阅读:
    并发编程JMM&Volatile底层原理剖析
    【JavaScript-26】js的内置对象Math,随机数获取随机颜色
    RabbitMQ 教程 | 第8章 跨越集群的界限
    NFT游戏开发 链游开发 区块链游戏开发
    【C语言】循环结构程序设计 (详细讲解)
    elasticsearch wildcard 慢查询原因分析(深入到源码!!!)
    c++中的重载
    【老生谈算法】matlab实现数字水印算法——数字水印算法
    深度优先搜索算法-dfs讲解
    拿什么拯救你?这暴热的天气!只能用python分析做个可视化康康
  • 原文地址:https://blog.csdn.net/be_racle/article/details/133001450