-
查看指定目录下信息 -ls
# -h 人性化显示 # -R 递归显示 hdfs dfs -ls [-h] [-R] <args>
-
创建文件夹 -mkdir
# -p 创建父目录 hdfs dfs -mkdir [-p] <paths>
-
上传文件 -put
hdfs dfs -put <linux路径> <hdfs路径> # 将单个 src 或多个 srcs 从本地文件系统复制到目标文件系统 # src代表的是本地目录 所谓的本地指的是客户端所在的机器 # dst代表的是HDFS # -p:保留访问和修改时间,所有权和权限。 # -f:覆盖目的地(如果已经存在) hdfs dfs -put file:///root/itcast.txt hdfs://node1:8020/itcast hdfs dfs -put itcast.txt /itcast
-
下载文件 -get
# 复制hdfs文件到本地文件系统。 hdfs dfs -get <hdfs路径> <linux路径> # 复制hdfs指定节点的文件到本地文件系统。 hdfs dfs -get hdfs://node1:8020/itcast/itcast.txt file:///root/
-
合并下载文件 -getmerge
# 合并下载多个文件,其功能和 appendToFile 相反的动作 hdfs dfs -getmerge /input/* ./merge.txt # 查看合并下载后的文件 cat merge.txt
-
文件移动 -mv、复制 -cp、删除 -rm
# 移动 hdfs dfs -mv <linux路径> <hdfs路径> # 复制 hdfs dfs -cp <linux路径> <hdfs路径> # 递归删除 hdfs dfs -rm -r <linux路径> <hdfs路径> # 跨集群复制 distcp hadoop distcp hdfs://node1:8020/input/1.txt hdfs://node5:8020/test
-
追加内容进文件 -appendToFile
# 准备工作 echo 1 >> 1.txt echo 2 >> 2.txt echo 3 >> 3.txt hadoop fs -put 1.txt / hadoop fs -cat /1.txt # 把本地文件 2.txt 和 3.txt 的内容追加到hdfs中的 1.txt hdfs dfs -appendToFile 2.txt 3.txt /1.txt hdfs dfs -cat /1.txt # 追加的用途:把本地的小文件上传中合并成为大文件 解决小文件场景的。
-
查看文件内容 -cat
# cat 适合小文件 # tail 将文件的最后一千字节内容显示到stdout -f参数支持实时追踪查看 hdfs dfs -cat /1.txt
-
修改权限 -chmod
# hdfs在设计的时候 借鉴模仿着linux权限管理模式 # 也有所谓的读写执行 user group others 777 # chgrp 修改所属组 # chmod 修改权限 # cgown 修改拥有者 hdfs dfs -chmod 777 /1.txt
-
统计HDFS可用空间 -df
hdfs dfs -df -h / # 输出 # Filesystem Size Used Available Use% # hdfs://node1:8020 111.1 G 5.0 M 98.3 G 0%
-
修改文件的副本数 -setrep
# hadoop fs -setrep -w N -R # -w wait等待 修改副本客户端是否等待修改完毕再推出 # N 就是修改之后的副本数 hadoop fs -setrep -w 2 /input/1.txt hadoop fs -setrep 2 /input/2.txt