HDFS作为分布式存储的文件系统,有其对数据的路径表达方式
HDFS同linux系统一样,均是以/作为根目录的组织形式

linux:/usr/local/hello.txt
HDFS:/usr/local/hello.txt
Linux:file:///
HDFS:hdfs://namenode:port/
协议头file:///或hdfs://root1:8020/可以省略
需要提供Linux路径的参数,会自动识别为file://
需要提供HDFS路径的参数,会自动识别hdfs://
除非明确需要写或不写会有BUG,否则一般不用写协议头
关于HDFS文件系统的操作命令,Hadoop提供了2套命令体系
hadoop命令(老版本),用法:hadoop fs [generic options]

hdfs命令(新版本用法),用法:hdfs dfs [generic options]

两者在文件系统操作上,用法完全一致
用哪个都可以
某些特殊操作需要选择hadoop命令或hdfs命令
hadoop fs -mkdir [-p]
hdfs dfs -mkdir [-p]
path为待创建的目录
-p选择的行为与linux mkdir -p一致,它会沿着路径创建父目录
hadoop fs -ls [-h] [-R] [
hdfs dfs -ls [-h] [-R] [
path指定目录路径
-h人性化显示文件size(大小)
-R递归查看指定目录以及子目录

hadoop fs -put [-f] [-p]
hdfs dfs -put [-f] [-p]
-f 覆盖目标文件(以存在下)
-p 保留访问和修改时间,所有权和权限
localsrc本地文件系统(客户端所在机器)
dst 目标文件系统(HDFS)
例子:
hadoop fs -put word.txt /root
hdfs dfs -put file:///etc/profile hdfs://root1:8020/root
hadoop fs -cat
hdfs dfs -cat
读取指定文件全部内容,显示在标准输出控制台
hadoop fs -cat /root/1.txt
hdfs dfs -cat /root/2.txt
读取大文件可以使用管道符配合more(配合grep过滤非常好用)
hadoop fs -cat
hdfs dfs -cat
hadoop fs -get [-f] [-p]
hdfs dfs -get [-f] [-p]
下载文件到本地文件系统指定目录,localdst必须是目录
-f 覆盖目标文件(已存在下)
-p 保留访问和修改时间,所有权和权限

hadoop fs -cp [-f]
hdfs dfs -cp [-f]
-f 覆盖目标文件(已存在下)

hadoop fs -appenToFile
hdfs dfs -appendToFile
将所有给定本地文件的内容追加到给定dst文件
dst如果文件不存在,将创建该文件
如果

hadoop fs -mv
hdfs dfs -mv
移动文件到指定文件夹下
可以使用命令移动数据
hadoop fs -rm -r [-skipTrash] URl [URl …]
hdfs dfs -rm -r [-skipTrash] URl [URl …]
删除指定路径的文件或文件夹
-skipTrash跳过回收站,直接删除

命令官方指导文档
Apache Hadoop 3.3.4 – Overview
除了使用命令操作HDFS文件系统外,在HDFS的web UI上也可以查看HDFS文件系统的内容

