接下来,我们来了解一下HDFS 的命令。再提醒一下,文件操作命令的基本格式是:
bin/hadoop dfs–cmd <args>
- cat
格式:hadoop dfs-cat URI [URI …]
作用:将参数所指示的文件的内容输出到stdout。
示例:
hadoop dfs -cat hdfs:// nn1.example.com/file1 hdfs:// nn2.example.com/file2
hadoop dfs -cat file:/// file3 /user/hadoop/file4
返回值:成功结束返回0,出现错误返回-1。
- chgrp
格式:hadoop dfs -chgrp [-R] GROUP URI [URI …]
作用:改变文件所属的用户组。如果使用-R 选项,则这一操作对整个目录结构递归执行。使用这一命令的用户必须是文件的所属用户,或者是超级用户。
- chmod
格式:hadoop dfs -chmod [-R] <MODE[,MODE]... | OCTALMODE> URI[URI …]
作用:改变文件的权限。如果使用-R 选项,则这一操作对整个目录结构递归执行。使用这一命令的用户必须是文件的所属用户,或者是超级用户。
- chown
格式:hadoop dfs -chown [-R] [OWNER][,[GROUP]] URI [URI… ]
作用:改变文件的所属用户。如果使用-R 选项,则这一操作对整个目录结构递归执行。使用这一命令的用户必须是文件在命令变更之前的所属用户,或者是超级用户。
- copyFromLocal
格式:hadoop dfs -copyFromLocal <localsrc> URI
作用:与put 命令类似,但是要限定源文件路径为本地文件系统。
- copyToLocal
格式:hadoop dfs -copyToLocal [-ignorecrc] [-crc] URI
<localdst> 作用:与get 命令类似,但是要限定目标文件路径为本地文件系统。
- count
格式:hadoop dfs -count [-q] <paths>
作用:统计匹配对应路径下的目录数,文件数,字节数(文件大小)。
选项意义:
使用-count 选项时,输出的列为:
DIR_COUNT, FILE_COUNT, CONTENT_SIZE,FILE_NAME 从左到右分别对应目录下已存在的目录数,文件数,文件大小,文件名使用-count-q 选项时,输出的列为:
QUOTA, REMAINING_QUOTA, SPACE_QUOTA, REMAINING_SPACE_QUOTA,
DIR_COUNT, FILE_COUNT, CONTENT_SIZE, FILE_NAME 从左到右的意义是:目录下最大允许文件+ 目录数(不存在上限,则为none),目录下可增
加目录+ 文件数(不存在上限,则为inf),目录下最大允许空间(不存在上限,则为none),目
录下可用最大空间(不存在上限,则为inf);后面的几个和-count 选项一致,分别对应目录下已
存在的目录数,文件数,文件大小,文件名。
示例:
hadoop dfs -count hdfs:// nn1.example.com/f ile1 hdfs:// nn2.example.com/f ile2
hadoop dfs -count -q hdfs:// nn1.example.com/f ile1
返回值:成功结束返回0,出现错误返回-1。图3-8 所示是一个count 选项使用后的结果示例。