Hadoop Put 命令用于两个文件

Sur*_*aja 4 hdfs

可以使用以下命令将名为records.txt的文件从本地复制到HDFS

hadoop dfs -put /home/cloudera/localfiles/records.txt /user/cloudera/inputfiles
Run Code Online (Sandbox Code Playgroud)

通过使用上述命令,文件records.txt将被复制到同名的HDFS中。

但我想将两个文件(records1.txt 和 demo.txt)存储到 HDFS 中

我知道我们可以使用如下所示的东西

hadoop dfs -put /home/cloudera/localfiles/records* /user/cloudera/inputfiles
Run Code Online (Sandbox Code Playgroud)

但是有没有任何命令可以帮助我们存储一两个不同名称的文件并将其复制到 hdfs 中?

SMA*_*SMA 6

使用 put 命令参数,您可以提供一个或多个源文件,如此处所述。所以尝试这样的事情:

hadoop dfs -put /home/cloudera/localfiles/records* /home/cloudera/localfiles/demo* /user/cloudera/inputfiles
Run Code Online (Sandbox Code Playgroud)

从 hadoop shell 命令用法来看:

put

Usage: hadoop fs -put <localsrc> ... <dst>

Copy single src, or multiple srcs from local file system to the destination filesystem. Also reads input from stdin and writes to destination filesystem.

hadoop fs -put localfile /user/hadoop/hadoopfile
hadoop fs -put localfile1 localfile2 /user/hadoop/hadoopdir
hadoop fs -put localfile hdfs://nn.example.com/hadoop/hadoopfile
hadoop fs -put - hdfs://nn.example.com/hadoop/hadoopfile
Reads the input from stdin.

Exit Code:

Returns 0 on success and -1 on error. 
Run Code Online (Sandbox Code Playgroud)