0


【大数据】HDFS 的常用命令

HDFS 的常用命令 

1.操作命令

操作命令是以

hdfs dfs

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

hdfs dfs [通用选项]

其中,

hdfs

是 Hadoop 系统在 Linux 系统中的主命令;

dfs

是子命令,表示执行文件系统操作;通用选项由 HDFS 文件操作命令和操作参数组成。

1.1 创建文件夹

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

例如,新建文件夹

/202012721

/202012721/dir1

。命令如下:

hdfs dfs -mkdir /202012721
hdfs dfs -mkdir -p /202012721/dir1

结果如下:

在这里插入图片描述

1.2 列出指定的文件和目录

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

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

hdfs dfs -ls/

结果如下:

在这里插入图片描述

1.3 新建文件

hdfs dfs -touchz <存放路径>

例如,在主目录

/202012721/input

下创建大小为

     0 
    
   
  
    0 
   
  
0 的空文件 
file

。命令如下:

hdfs dfs -touchz /202012721/input.txt
hdfs dfs -ls/202012721

结果如下:

在这里插入图片描述

1.4 上传文件

hdfs dfs -put [-f][-p] <本地路径> <HDFS上的路径>

或者

hdfs dfs -copyFromLocal [-f][-p][-l] <本地路径> <HDFS上的路径>

在这里我们只演示第一个命令。例如,在本地创建一个文件

data.txt

并传到 HDFS 的

/202012721

目录下命令如下:

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

结果如下:

在这里插入图片描述

1.5 将本地文件移动到 HDFS

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

hdfs dfs -copyFromLocal

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

例如,我们把本地文件

data2.txt

移动到 HDFS 的

/202012721

命令如下:

hdfs dfs -moveFromLocal data2.txt /202012721 

结果如下:

在这里插入图片描述

1.6 下载文件

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

或者

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

例如,将 HDFS 中的

/202012721/data.txt

文件下载并保存为本地的

~/local_data.txt

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

/202012721/data2.txt

文件下载到本地目录:

hdfs dfs -copyToLocal /202012721/data2.txt ~

1.7 查看文件

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

例如,查看

/202012721/data.txt

。命令如下:

hdfs dfs -cat/202012721/data.txt

结果如下:

在这里插入图片描述

1.8 追写文件

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

该命令将

localsrc

指向的本地文件内容写入目标文件

dst

。例如,在本地根目录下新建

data3.txt

文件,内容为

hadoop

,追加到文件

/202012721/data.txt

中。命令如下:

hdfs dfs -appendToFile data3.txt /202012721/data.txt
hdfs dfs -cat/202012721/data.txt

结果如下:

在这里插入图片描述

1.9 删除目录或者文件

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

例如,删除 HDFS 中的

/202012721/data2.txt

文件。命令如下:

hdfs dfs -rm/202012721/data2.txt

结果如下:

在这里插入图片描述

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

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

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

例如,显示 HDFS 根目录中

202012721

文件夹下所有文件的大小。命令如下:

hdfs dfs -du /202012721

结果如下:

在这里插入图片描述

1.11 HDFS 中的文件复制

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

例如,将 HDFS 中的

/202012721/data.txt

复制为

/202012721/data_copy.txt

。命令如下:

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

结果如下:

在这里插入图片描述

1.12 HDFS 中的文件移动

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

例如,将 HDFS 中的

/202012721/data_copy.txt

移动(也可理解为改名)为

/202012721/data2.txt

。命令如下:

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

结果如下:

在这里插入图片描述

2.管理命令

管理命令是以

hdfs dfsadmin

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

hdfs dfsadmin [通用选项]

其中,

hdfs

是 Hadoop 系统在 Linux 系统中的主命令;

dfsadmin

是子命令,表示执行文件系统管理的操作;通用选项由 HDFS 管理命令和参数组成。

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

hdfs dfsadmin -report

结果如下:

在这里插入图片描述

2.2 查看拓扑

hdfs dfsadmin -printTopology

结果如下:

在这里插入图片描述

3.其他命令

我们把操作命令

hdfs dfs

、管理命令

hdfs dfsadmin

之外的命令称为其他命令。输入

hdfs

查看。

标签: 大数据 hdfs hadoop

本文转载自: https://blog.csdn.net/be_racle/article/details/133001450
版权归原作者 G皮T 所有, 如有侵权,请联系我们删除。

“【大数据】HDFS 的常用命令”的评论:

还没有评论