HDFS 常用 shell 命令
1. 显示当前目录结构
1 | 显示当前目录结构 |
2. 创建目录
1 | 创建目录 |
3. 删除操作
1 | 删除文件 |
4. 从本地加载文件到 HDFS
1 | 二选一执行即可 |
5. 从 HDFS 导出文件到本地
1 | 二选一执行即可 |
6. 查看文件内容
1 | 二选一执行即可 |
7. 显示文件的最后一千字节
1 | hadoop fs -tail <path> |
8. 拷贝文件
1 | hadoop fs -cp [src] [dst] |
9. 移动文件
1 | hadoop fs -mv [src] [dst] |
10. 统计当前目录下各文件大小
- 默认单位字节
- -s : 显示所有文件大小总和,
- -h : 将以更友好的方式显示文件大小(例如 64.0m 而不是 67108864)
1
hadoop fs -du <path>
11. 合并下载多个文件
- -nl 在每个文件的末尾添加换行符(LF)
- -skip-empty-file 跳过空文件
1 | hadoop fs -getmerge |
12. 统计文件系统的可用空间信息
1 | hadoop fs -df -h / |
13. 更改文件复制因子1
hadoop fs -setrep [-R] [-w] <numReplicas> <path>
- 更改文件的复制因子。如果 path 是目录,则更改其下所有文件的复制因子
- -w : 请求命令是否等待复制完成
1 | 示例 |
14. 权限控制1
2
3
4
5
6
7 权限控制和Linux上使用方式一致
变更文件或目录的所属群组。 用户必须是文件的所有者或超级用户。
hadoop fs -chgrp [-R] GROUP URI [URI ...]
修改文件或目录的访问权限 用户必须是文件的所有者或超级用户。
hadoop fs -chmod [-R] <MODE[,MODE]... | OCTALMODE> URI [URI ...]
修改文件的拥有者 用户必须是超级用户。
hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI ]
15. 文件检测1
hadoop fs -test - [defsz] URI
可选选项:
- -d:如果路径是目录,返回 0。
- -e:如果路径存在,则返回 0。
- -f:如果路径是文件,则返回 0。
- -s:如果路径不为空,则返回 0。
- -r:如果路径存在且授予读权限,则返回 0。
- -w:如果路径存在且授予写入权限,则返回 0。
- -z:如果文件长度为零,则返回 0。
1 | 示例 |