HDFS实战之浏览文件和目录
1.Hadoop中HDFS常用的命令可以查看HDFS中的文件。【这个HDFS文件夹是虚拟出来的一个文件夹,你在虚拟机中是找不出来的。】
2.现在完成的任务是:如何使用eclipse编写程序,然后打包成jar文件,然后在虚拟机中运行,然后体现出该目录下的文件以及目录。
3.具体步骤如下:
- 1)新建一个java project,然后导入hadoop中需要使用的jar包【主要是hadoop安装目录下的hadoop-2.6.4/share/hadoop/common中的三个jar文件和hadoop-2.6.4/share/hadoop/common/lib中的所有jar文件。hadoop-2.6.4/share/hadoop/hdfs下的三个jar文件和hadoop-2.6.4/share/hadoop/hdfs/lib中的所有jar文件】
- 2)新建一个类HDFSFileShow,其中具体代码如下:
import java.io.IOException;
import java.text.SimpleDateFormat;
import org.apache.hadoop.conf.*;
import org.apache.hadoop.fs.*;
public class HDFSFileShow {
public static void main(String args[]) throws IOException{
if(args.length < 1) {
System.out.println("parameter error");
}
else {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Configuration conf = new Configuration();
FileSystem hdfs = FileSystem.get(conf);
Path path = new Path(args[0]);
FileStatus stat = hdfs.getFileStatus(path);
System.out.println("文件路径:"+stat.getPath().toUri().getPath());
System.out.println("是否是目录"+stat.isDir());
System.out.println("文件权限:"+stat.getPermission());
}
}
}
- 3)打包生成jar文件,将该jar文件命名为“example.jar”上传到虚拟机中
- 4)在虚拟机中开启hadoop,然后执行如下命令:
hadoop jar example.jar /data
这条命令意思是:使用example.jar这个文件去查看/data目录下的文件。【但是前提是:你所在的hdfs目录中已经创建过/data这个目录了。否则可以使用hadoop fs -mkdir /data
来创建/data 这个目录】
4.注:
- 这里的args参数即是hdfs的文件【夹】目录,比如
/tmp/word.txt
- 需要执行命令:
java -cp xxx.jar [类名] [parameter]
- 完毕。