网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
./bin/hdfs dfs -ls /user/hadoop

如果要列出HDFS上的所有目录,可以使用如下命令:
./bin/hdfs dfs -ls

下面,可以使用如下命令创建一个input目录:
./bin/hdfs dfs -mkdir input22222

在创建个input目录时,采用了相对路径形式,实际上,这个input目录创建成功以后,它在HDFS中的完整路径是“/user/hadoop/input”。

如果要在HDFS的根目录下创建一个名称为input的目录,则需要使用如下命令:
./bin/hdfs dfs -mkdir /input33333

列出hdfs根目录下文件的命令:
./bin/hdfs dfs -ls /

#### 1.1.3 删除目录
可以使用rm命令删除一个目录,比如,可以使用如下命令删除刚才在HDFS中创建的“/input33333”目录(不是“/user/hadoop/input22222”目录):
./bin/hdfs dfs -rm -r /input33333
上面命令中,“-r”参数表示如果删除“/input”目录及其子目录下的所有内容,如果要删除的一个目录包含了子目录,则必须使用“-r”参数,否则会执行失败。

### 1.2 文件操作
在实际应用中,经常需要从本地文件系统向HDFS中上传文件,或者把HDFS中的文件下载到本地文件系统中。
首先,使用vim编辑器,在本地Linux文件系统的“/home/hadoop/”目录下创建一个文件myLocalFile.txt,里面可以随意输入一些单词,比如,输入如下三行:
>
> Hadoop
>
>
> Spark
>
>
> JavaWeb
>
>
>
#### 1.2.1 本地上传文件到HDFS
然后,可以使用如下命令把本地文件系统的“/home/hadoop/myLocalFile.txt”上传到HDFS中的当前用户目录的input目录下,也就是上传到HDFS的“/user/hadoop/input/”目录下:
hdfs dfs -put /home/hadoop/myLocalFile.txt input22222 # 设置了PATH变量的话可以直接使用hdfs命令
hdfs dfs -ls input22222 # 查看文件是否上传成功

查看input22222文件夹中的内容:
hdfs dfs -ls input22222
查看HDFS中的myLocalFile.txt这个文件的内容:
hdfs dfs -cat input22222/myLocalFile.txt
如果没有设置PATH路径,使用如下命令
cd /usr/local/hadoop-3.3.6
./bin/ hdfs dfs -cat input22222/myLocalFile.txt

#### 1.2.2 将文件从HDFS下载到本地主机
./bin/hdfs dfs -ls input22222
./bin/hdfs dfs -get input22222/myLocalFile.txt /home/hadoop/Downloads/
cd /home/hadoop/Downloads/
ls -l
cat myLocalFile.txt

#### 1.2.3 文件在HDFS中拷贝
了解一下如