创建目录
调用格式:#层级创建(-p)
hdfs dfs -mkdir (-p) /目录
上传指令
hdfs dfs -put (-f、-p、-l) <本地文件> <dst>
创建空文件
hdfs dfs -touchz <path>
文件里追加内容
不支持在中间增删改查
hdfs dfs -appendToFile <本地文件> <系统路径>
下载文件
hdfs dfs -get <系统路径> <本地路径>
hdfs dfs -copyToLocal <系统路径> <本地路径>
#合并下载 到同一个文件里
hdfs dfs -getmerge <系统路径> <本地路径>
移动系统中的文件/重命名
hdfs dfs -mv <系统文件> <系统路径>
#重命名
hdfs dfs -mv <文件> <新文件名>
复制文件
hdfs dfs -cp <文件> <系统路径>
删除文件
#非空目录
hdfs dfs -rm <文件>
#空目录
hdfs dfs -rm -r <文件>
hdfs dfs -rmdir <文件> #必须为非空
查看磁盘利用率
hdfs dfs -df <系统目录> #显示的单位是字节
hdfs dfs -df -h <系统目录> #显示单位
#-s 是总共的大小
#-du 是文件夹内的各个文件大小
修改权限(777rwx;)
#修改读写权限
hdfs dfs -chmod [777] <文件路径>
#修改所属用户
hdfs dfs -chown []:[] <文件路径>
修改文件副本数量
注意:当设置的replication数量与初始化不一致时,集群会做出反应,自动复制。
hdfs dfs -setrep [5] <文件路径> #5个副本
查看文件状态
hdfs dfs [generic options] -stat [format1 format2 format3,...] <文件路径>
#format
%b 文件大小
%n 文件名
%o block的size
%r 副本数
%y utc时间
%Y 自1970年1.1到utc的微秒数
%F 目录打印dir 文件打印regular files
测试
hdfs dfs -test [x] <文件路径>
#x:
-e 是否存在 存在返回0
-z 是否为空 为空返回0
-d 是否是文件(目录) 是返回0
#调用:
hdfs dfs -test -e <文件路径> && echo "exists" || echo "none"
#返回:
存在exists
不存在none