Hadoop 的基本 shell 命令主要用于与 Hadoop 分布式文件系统(HDFS)和 MapReduce 进行交互。以下是一些常用的 Hadoop shell 命令:
一、 HDFS 命令
- 查看 HDFS 状态
`hdfs dfsadmin -report`: 显示 HDFS 的健康状态和容量信息。
- 文件系统操作
`hdfs dfs -ls [path]`: 列出指定路径下的文件和目录。
`hdfs dfs -du [path]`: 显示指定路径的文件和目录的大小。
`hdfs dfs -df [path]`: 显示 HDFS 的磁盘使用情况。
- 文件操作
`hdfs dfs -put localpath hdfspath`: 将本地文件上传到 HDFS。
`hdfs dfs -get hdfspath localpath`: 从 HDFS 下载文件到本地。
`hdfs dfs -copyFromLocal localpath hdfspath`: 将本地文件复制到 HDFS。
`hdfs dfs -copyToLocal hdfspath localpath`: 从 HDFS 复制文件到本地。
- 目录操作
`hdfs dfs -mkdir [path]`: 在 HDFS 中创建目录。
`hdfs dfs -rmdir [path]`: 删除 HDFS 中的空目录。
`hdfs dfs -rm [path]`: 删除 HDFS 中的文件或目录。
`hdfs dfs -rm -r [path]`: 递归删除 HDFS 中的目录及其内容。
- 文件查看
`hdfs dfs -cat [path]`: 显示 HDFS 文件的内容。
`hdfs dfs -tail [path]`: 显示 HDFS 文件的最后部分内容。
`hdfs dfs -chmod [permissions] [path]`: 更改 HDFS 文件或目录的权限。
`hdfs dfs -chown [owner:group] [path]`: 更改 HDFS 文件或目录的所有者和用户组。
`hdfs dfs -chgrp [group] [path]`: 更改 HDFS 文件或目录的用户组。
二、 MapReduce 命令
1. 提交作业
`hadoop jar [jarfile] [mainclass] [args]`: 提交一个 MapReduce 作业。
2. 查看作业状态
`yarn application -list`: 列出当前运行的 YARN 应用程序。
`yarn application -status [applicationId]`: 查看指定应用程序的状态。
3. 停止作业
`yarn application -kill [applicationId]`: 杀死指定的 YARN 应用程序。
这些命令是使用 Hadoop 时常用的基础命令。Hadoop 的文档和社区提供了更多的细节和高级用法,适用于具体的配置和操作需求。