Linux:file:///
HDFS:hdfs://namenode:port/
关于HDFS文件系统,Hadoop提供了两套命令系统:hadoop命令(老版)hdfs命令(新版)
1.创建文件夹:
hadoop fs -mkdir -p <path>
hdfs dfs -mkdir -p <path>
-p 选项行为可以与Linux mkdir -p一致,它会沿着路径创建父目录
2.查看指定目录下内容
hadoop fs -ls [-h] [-R] <path>
hdfs dfs -ls [-h] [-R] <path>
-h:人性化显示文件size
-R:递归查看目录及其子目录
3.上传文件到指定HDFS目录
hadoop fs -put [-f] [-p] <path1> <path2>
hdfs dfs -put [-f] [-p] <path1> <path2>
path1:上传文件目录
path2:上传位置目录
-f:覆盖已存在的目标文件
-p:保留访问和修改时间,所有权和权限
如果要从linux文件系统上传到dfs文件系统,示例如下
hadoop fs -put file:///home/hadoop/test.txt hdfs://192.168.10.105:8020/etc/
4.查看HDFS文件内容
hadoop fs -cat <path>
hdfs dfs -cat <path>
如果要读取大文件可以加上后缀 < | more >
5.下载HDFS文件到本地
hadoop fs -get [-f] [-p] <src> <localdst>
hdfs dfs -get [-f] [-p] <src> <localdst>
src:要下载的文件目录
localdst:下载到本地的目录
-f:覆盖已存在的目标文件
-p:保留访问和修改时间,所有权和权限
6.拷贝HDFS文件
hadoop fs -cp [-f] <src> <dst>
hdfs dfs -cp [-f] <src> <dst>
-f:覆盖已存在的目标文件
7.追加数据到HDFS文件中
hadoop fs -appendToFile <localsrc> <dst>
hdfs dfs -appendToFile <localsrc> <dst>
dst目录如果不存在,将创建该文件
8.文件移动
hadoop fs -mv <src> <dst>
hdfs dfs -mv <-src> <dst>
当dst目录精确到了文件,则同时还具有重命名功能
9.HDFS数据删除操作
hadoop fs -rm -r <path>
hdfs dfs -rm -r <path>
回收站功能默认关闭,打开需要在core-site.xml里配置
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>120</value>
</property>