Hadoop HDFS提供了一组命令集来操作文件,它既可以操作Hadoop分布式文件系统,也可以操作本地文件系统。但是要加上theme(Hadoop文件系统用hdfs://,本地文件系统用file://)
1. 添加文件和目录
比如我们要在Hadoop 文件系统中创建一个目录叫 /user/hadoop-user ,则
hadoop fs -mkdir /user/hadoop-user
要查看我们创建的目录,
hadoop fs -ls /
或者用 hadoop fs -lsr / 递归的显示子目录
如果我们要把一个文件从本地文件系统复制到HDFS:
比如我们在/tmp/charles目录下有个文件叫 textfile.txt,那么我们想上传到HDFS中我们刚才创建的/user/hadoop-user目录下:
hadoop fs -put /tmp/charles/textfile.txt /user/hadoop-user
我们用 hadoop fs -ls 来查看是否这个文件已经被添加:
因为我们在hadoop的hdfs-site.xml中设置了replication-factor为1,所以这里只存一个备份,显示1
如果我们要把文件从HDFS复制到本地文件系统:
比如我们要把刚才复制过来的文件textfile.txt复制到本地目录下/tmp/charles2:
hadoop fs -get /user/hadoop-user/textfile.txt /tmp/charles2/textfile.txt
我们检查本地文件系统,果然发现文件从HDFS 复制过来了。
如果我们要查看HDFS文件系统的某个文件:
hadoop fs -cat textfile.txt
如果我们要从HDFS文件系统中删除某个文件:
hadoop fs -rm textfile.txt
此时我们再去检查HDFS文件系统,文件已经不存在了。
更多Hadoop相关信息见Hadoop 专题页面 ?tid=13