HDFS文件系统和本地文件系统一样,有着基本的操作命令,命令的基本格式如下:
其中command 指具体的操作命令,arg是参数
hadoop fs 支持的命令有:
- ls
- lsr
- du
- dus
- count [-q]
- mv
- cp
- rm
- rmr
- expunge
- put ...
- copyFromLocal ...
- moveFromLocal ...
- get
- getmerge
- cat
- text
- copyToLocal
- moveToLocal
- mkdir
- setrep
- touchz
- test -[ezd]
- stat
- tail
- chmod PATH
- chown [OWER][:[GROUP]] PATH
- chgrp GROUP PATH
最重要的一条命令是help cmd,可以查看命令具体的帮助,以上命令和本地的操作基本差不多,类似于ls,mkdir,cat等命令,以下主要介绍和linux文件操作不同的命令。
- lsr 递归列出所有文件,例如以下命令:
会递归列出根目录下的所有文件
2.du 列出指定文件,或者指定目录下的文件所占用的空间,以字节为单位 输出如下
- Found 1 items
- 4 hdfs://localhost:9000/tmp/hadoop-kenvi/mapred
这说明该目录下只有一个文件,占用了4字节的空间
3、count 统计指定目录下目录的个数,文件的个数,以及所占用的字节数 以上代码统计根目录的信息,输出如下:
- 5 1 4 hdfs://localhost:9000/
说明有5个目录,1个文件,总共占4字节
4、put和get分别是将本地文件上传到namenode节点上去,和从namenode节点上把文件下到本地
5、touchz 以 yyyy-MM-dd HH:mm:ss 的格式在文件中写入时间戳,如果一个长度非零的文件存在,则返回错误
6、test 判断文件是否存在e,是否是目录d,或者长度是否为0,若是则返回0,否则返回1
7、将文件以文本的形式输出
阅读(2937) | 评论(0) | 转发(0) |