Hadoop的shell命令练习(实验报告)
三、(本题中的后几问删除操作存疑)
(1)向HDFS中上传任意文本文件,如果指定的文件在HDFS中已经存在,由用户指定是追加到原有文件末尾还是覆盖原有的文件;
(2)从HDFS中下载指定文件,如果本地文件与要下载的文件名称相同,则自动对下载的文件
(3)将HDFS中指定文件的内容输出到终端中;
(4)显示HDFS中指定的文件的读写权限、大小、创建时间、路径等信息;
(5)给定HDFS中某一个目录,输出该目录下的所有文件的读写权限、大小、创建时间、路径等信息,如果该文件是目录,则递归输出该目录下所有文件相关信息;
(6)提供一个HDFS内的文件的路径,对该文件进行创建和删除操作。如果文件所在目录不存在,则自动创建目录;
(7)提供一个HDFS的目录路径,对该目录进行创建和删除操作。创建目录时,如果目录文件所在目录不存在则自动创建相应目录;删除目录时,由用户指定当该目录不为空时是否还删除该目录;
删除目录(如果目录非空则提示not empty,不执行删除): ./hdfs dfs -rmdir dir1/dir2
强制删除目录: ./hdfs dfs -rm -R dir1/dir2
(8)删除HDFS中指定的文件;
(9) 删除HDFS中指定的目录,由用户指定目录中如果存在文件时是否删除目录;
删除目录(如果目录非空则提示not empty,不执行删除): ./hdfs dfs -rmdir dir1/dir2
(10)在HDFS中,将文件从源路径移动到目的路径。
命令: ./hdfs dfs -mv text.txt text2.txt
四、编程实现对输入文件的排序
现在有多个输入文件,每个文件中的每行内容均为一个整数。要求读取所有文件中的整数,进行升序排序后,输出到一个新的文件中,输出的数据格式为每行两个整数,第一个数字为第二个整数的排序位次,第二个整数为原待排列的整数。下面是输入文件和输出文件的一个样例供参考。
输入文件1的样例如下:
输入文件2的样例如下:
输入文件3的样例如下:
运行结果:
代码:(运行代码需要设计运行参数,输入文件位置,具体操作见文末)
五、编程实现给定表格的信息挖掘
求出哪些人两两之间有共同好友,以及他俩的共同好友都是谁。
如A-B:C,E
输入文件内容:
实验结果:
代码:
注:文件位置参数设置:
选中脚本,右击,然后如下图所示进行设置: