命令列表:
hadoop fs [generic options]
[-appendToFile <localsrc> ... <dst>] 追加写
[-cat [-ignoreCrc] <src> ...] 查看
[-checksum [-v] <src> ...] 校验和(数据完整性校验)
[-chgrp [-R] GROUP PATH...] 修改所属组(change group) -R表示递归
[-chmod [-R] <MODE[,MODE]... | OCTALMODE> PATH...] 修改权限(change mode) -R表示递归
[-chown [-R] [OWNER][:[GROUP]] PATH...] 修改所有者(change group) -R表示递归
[-copyFromLocal [-f] [-p] [-l] [-d] [-t <thread count>] <localsrc> ... <dst>] 从本地复制
[-copyToLocal [-f] [-p] [-ignoreCrc] [-crc] <src> ... <localdst> 复制到本地
[-count [-q] [-h] [-v] [-t [<storage type>]] [-u] [-x] [-e] <path> ...] 统计
[-cp [-f] [-p | -p[topax]] [-d] <src> ... <dst>] 复制
[-createSnapshot <snapshotDir> [<snapshotName>]] 创建快照
[-deleteSnapshot <snapshotDir> <snapshotName>] 删除快照
[-df [-h] [<path> ...]] 显示目前文件系统磁盘使用情况统计(disk free)
[-du [-s] [-h] [-v] [-x] <path> ...] 显示目录或文件的大小(disk usage) -h或--human-readable 以K,M,G为单位,提高信息的可读性。
[-expunge [-immediate] [-fs <path>]] 清空回收站
[-find <path> ... <expression> ...]
[-get [-f] [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
[-getfacl [-R] <path>] 显示权限信息
[-getfattr [-R] {-n name | -d} [-e en] <path>] 显示其他信息
[-getmerge [-nl] [-skip-empty-file] <src> <localdst>] 合并
[-head <file>] 显示头部
[-help [cmd ...]] 帮助
[-ls [-C] [-d] [-h] [-q] [-R] [-t] [-S] [-r] [-u] [-e] [<path> ...]]
[-mkdir [-p] <path> ...] 创建文件夹
[-moveFromLocal <localsrc> ... <dst>] 从本地移动
[-moveToLocal <src> <localdst>] 移动到本地
[-mv <src> ... <dst>] 内部移动/改名
[-put [-f] [-p] [-l] [-d] <localsrc> ... <dst>] 上传
[-renameSnapshot <snapshotDir> <oldName> <newName>] 重全名快照
[-rm [-f] [-r|-R] [-skipTrash] [-safely] <src> ...] 删除
[-rmdir [--ignore-fail-on-non-empty] <dir> ...] 删除文件夹
[-setfacl [-R] [{-b|-k} {-m|-x <acl_spec>} <path>]|[--set <acl_spec> <path>]] 设置权限(同linux 的chmod)
[-setfattr {-n name [-v value] | -x name} <path>]
[-setrep [-R] [-w] <rep> <path> ...] 修改副本数
[-stat [format] <path> ...] 显示文件统计信息
[-tail [-f] [-s <sleep interval>] <file>] 结尾信息(1k的数据)
[-test -[defswrz] <path>] 测试 (e:判断文件是否存在 z:长度是否为0 d:是否是目录)
[-text [-ignoreCrc] <src> ...] 查看
[-touch [-a] [-m] [-t TIMESTAMP ] [-c] <path> ...] 创建文件
[-touchz <path> ...] 创建一个大小为0的文件(touch zero)
[-truncate [-w] <length> <path> ...]
[-usage [cmd ...]]
详解:
-put 将本地文件或目录上传到HDFS中的路径 hdfs dfs -put < localsrc> … < dst>
-get 将文件或目录从HDFS中的路径拷贝到本地文件路径 hdfs dfs -get [-ignoreCrc] [-crc] < src> < localdst> 选项:-ignorecrc选项复制CRC校验失败的文件。-crc选项复制文件和CRC。
-du 显示给定目录中包含的文件和目录的大小或文件的长度,用字节大小表示。 hdfs dfs -du [-s] [-h] URI [URI …] 选项:-s选项将显示文件长度的汇总摘要,而不是单个文件。-h选项将以“人可读”的方式格式化文件大小(例如64.0m而不是67108864);第一列标示该目录下总文件大小,第二列标示该目录下所有文件在集群上的总存储大小和你的副本数相关(第二列内容=文件大小*副本数),第三列标示你查询的目录
-dus 显示文件长度的摘要。 hdfs dfs -dus < args> 注意:不推荐使用此命令。而是使用hdfs dfs -du -s。
-mv 在HDFS文件系统中,将文件或目录从HDFS的源路径移动到目标路径。不允许跨文件系统移动文件。
-cp 在HDFS文件系统中,将文件或目录复制到目标路径下 hdfs dfs -cp [-f] [-p | -p [topax] ] URI [ URI …] < dest> 选项:-f选项覆盖已经存在的目标。-p选项将保留文件属性[topx](时间戳,所有权,权限,ACL,XAttr)。如果指定了-p且没有arg,则保留时间戳,所有权和权限。如果指定了-pa,则还保留权限,因为ACL是一组超级权限。确定是否保留原始命名空间扩展属性与-p标志无关。
-copyFromLocal 从本地复制文件到hdfs文件系统(与-put命令相似) hdfs dfs -copyFromLocal < localsrc> URI 选项:如果目标已存在,则-f选项将覆盖目标。
-copyToLocal 复制hdfs文件系统中的文件到本地 (与-get命令相似) hdfs dfs -copyToLocal [-ignorecrc] [-crc] URI < localdst>
-rm 删除一个文件或目录 hdfs dfs -rm [-f] [-r|-R] [-skipTrash] URI [URI …] 选项:如果文件不存在,-f选项将不显示诊断消息或修改退出状态以反映错误。-R选项以递归方式删除目录及其下的任何内容。-r选项等效于-R。-skipTrash选项将绕过垃圾桶(如果已启用),并立即删除指定的文件。当需要从超配额目录中删除文件时,这非常有用。
-cat 显示文件内容到标准输出上。 hdfs dfs -cat URI [URI …]
-text 获取源文件并以文本格式输出文件。允许的格式为zip和TextRecordInputStream。 hdfs dfs -text
-touchz 创建一个零长度的文件。 hdfs dfs -touchz URI [URI …]
-stat 显示文件所占块数(%b),文件名(%n),块大小(%n),复制数(%r),修改时间(%y%Y) hdfs dfs -stat URI [URI …]
-tail 显示文件的最后1kb内容到标准输出 hdfs dfs -tail [-f] URI 选项: -f选项将在文件增长时输出附加数据,如在Unix中一样。
-count 统计与指定文件模式匹配的路径下的目录,文件和字节数 hdfs dfs -count [-q] [-h] < paths>
-getmerge 将源目录和目标文件作为输入,并将src中的文件连接到目标本地文件(把两个文件的内容合并起来) hdfs dfs -getmerge < src> < localdst> [addnl] 注:合并后的文件位于当前目录,不在hdfs中,是本地文件
-grep 从hdfs上过滤包含某个字符的行内容 hdfs dfs -cat < srcpath> | grep 过滤字段
-chown hdfs上文件权限修改 hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI ]#修改文件的所有者 例如:hdfs dfs -chown -R Administrator:Administrator /user/
-distcp 最常用在集群之间的拷贝:hadoop distcp hdfs://master1:8020/foo/bar hdfs://master2:8020/bar/foo