📜  Hadoop – getmerge 命令

📅  最后修改于: 2021-10-27 06:46:51             🧑  作者: Mango

Hadoop -getmerge命令用于合并 HDFS(Hadoop 分布式文件系统)中的多个文件,然后将其放入我们本地文件系统中的单个输出文件中。

我们希望将 HDFS 中存在的 2 个文件(即file1.txtfile2.txt )合并到本地文件系统中的单个文件 output.txt 中。

使用 -getmerge 命令的步骤

第 1 步:让我们看看我们的 HDFS 中可用的 file1.txtfile2.txt 的内容。您可以在下图中看到 File1.txt 的内容:

File1.txt 的内容

File2.txt 的内容

File2.txt 的内容

在这种情况下,我们已将这两个文件复制到我的 HDFS 中的Hadoop_File文件夹中。如果您不知道如何创建目录并将文件复制到 HDFS,请按照以下命令进行操作。

  • 在我们的 HDFS 中创建 Hadoop_Files 目录
    hdfs dfs -mkdir /Hadoop_File
  • 将文件复制到 HDFS

Hadoop - getmerge 命令 - 1

下面是在 HDFS 中我的 /Hadoop_File 目录中显示此文件的图像。

Hadoop - getmerge 命令 - 2

第 2 步:现在是时候使用-getmerge命令将这些文件合并到我们本地文件系统中的单个输出文件中,以便按照以下过程进行操作。

句法:

hdfs dfs -getmerge -nl /path1 /path2 ..../path n /destination

-nl用于添加新行。这将在这 n 个文件的内容之间添加一个新行。在这种情况下,我们已将其合并到我的/Documents文件夹中的/hadoop_file 文件夹。

getmerge 命令

现在让我们看看文件是否合并到output.txt文件中。

Hadoop 中的 getmerge 命令输出

在上图中,您可以很容易地看到该文件已成功合并到我们的output.txt文件中。