文件操作
查看文件
ls
# 查看 DIR_PATH 目录下的文件
hdfs dfs -ls DIR_PATH
du
# 查看 文件/文件夹 占用的空间
hdfs dfs -du DIR_PATH
# 转换单位
hdfs dfs -du -h DIR_PATH
df
# 查看磁盘空间
hdfs -df -h
复制和获取文件
put
# 将 client node 中的 SOURCE put 到 HDFS 的 TARGET 文件夹中
hdfs dfs -put SOURCE TARGET
# 若文件存在,则可以使用 -f 参数进行覆盖
hdfs dfs -put -f SOURCE TARGET
get
# 将 HDFS 中的 SOURCE 文件复制到 client node 中 TARGET 路径
hdfs dfs -get SOURCE TARGET
copyFromLocal
# 和 put 的作用是一样的
hdfs dfs -copyFromLocal SOURCE TARGET
若想覆盖可以加上 -f 参数
copyToLocal**
# 和 get 命令相似
hdfs dfs -copyToLocal SOURCE TARGET
cp
# 在 HDFS 中将 SOURCE 文件复制到 TARGET 目录
hdfs dfs -cp SOURCE TARGET
创建文件夹
mkdir
# 在 DIR_PATH 路径创建一个目录
hdfs dfs -mkdir DIR_PATH
若需要创建多级目录可以加 -p 参数
删除文件
rm
# 删除 TARGET 文件
hdfs dfs -rm TARGET
# 删除 TARGET_DIR 目录
hdfs dfs -rm -r TARGET
rmdir
# 删除一个空的目录
hdfs dfs -rmdir TARGET
查看文件
cat
# 将 FILE 文件内容输出到 stdout
hdfs dfs -cat FILE
tail
# 查看 FILE 文件末尾 1 kb 的数据,行为和 Unix 中的一致
hdfs dfs -tail FILE
移动文件
moveFromLocal, moveToLocal, mv
使用方法同 copyFromLocal, copyToLocal, cp。区别为 cp 是复制,而 mv 是移动。
重命名
hdfs dfs -mv OLD_NAME NEW_NAME
文件权限
chmod
# 更改 FILE 文件为 777 权限
hdfs dfs -chmod 777 FILE
# 加上 -R 参数则表示递归地修改目录下所有的文件
hdfs dfs -chmod -R 777 FILE
chown
# 更改文件的所有者
hdfs dfs -chown root TARGET
# 递归地修改目录下所有文件
hdfs dfs -chown -R root TARGET
chgrp
# 更改文件的属组
hdfs dfs -chgrp root TARGET
# 递归地修改目录下所有文件
hdfs dfs -chgrp -R root TARGET