实验3——Hadoop Shell基本操作

1.Hadoop Shell基本操作

系统环境
Linux Ubuntu 16.04
hadoop-2.6.0-cdh5.4

任务内容
1.学习在开启、关闭Hadoop
2.学习在Hadoop中创建、修改、查看、删除文件夹及文件
3.学习改变文件的权限及文件的拥有者
4.学习使用shell命令提交job任务
5.Hadoop安全模式的进入与退出

任务步骤
1.打开终端模拟器,切换到/apps/hadoop/sbin目录下,启动Hadoop

cd /apps/hadoop/sbin  
./start-all.sh  

在这里插入图片描述
除了直接执行start-all.sh外,还可以分步启动start-dfs.sh和start-yarn.sh
执行jps,检查一下Hadoop相关进程是否启动
在这里插入图片描述
3.在/目录下创建一个test1文件夹

hadoop fs -mkdir /test1  

在这里插入图片描述
4.在Hadoop中的test1文件夹中创建一个file.txt文件

hadoop fs -touchz /test1/file.txt 

在这里插入图片描述
5.查看根目录下所有文件

hadoop fs -ls /  

在这里插入图片描述
6.还可以使用ls -R的方式递归查看根下所有文件

hadoop fs -ls -R / 

在这里插入图片描述
7.将Hadoop根下test1目录中的file.txt文件,移动到根下并重命名为file2.txt

hadoop fs -mv /test1/file.txt /file2.txt  

在这里插入图片描述
8.将Hadoop根下的file2.txt文件复制到test1目录下

hadoop fs -cp /file2.txt /test1  

在这里插入图片描述
9.在Linux本地/data目录下,创建一个data.txt文件,并向其中写入hello hadoop!

cd /data  
touch data.txt  
echo hello hadoop! >> data.txt  

在这里插入图片描述
10.将Linux本地/data目录下的data.txt文件,上传到HDFS中的/test1目录下

hadoop fs -put /data/data.txt /test1

在这里插入图片描述
11.查看Hadoop中/test1目录下的data.txt文件

hadoop fs -cat /test1/data.txt  

在这里插入图片描述
12.除此之外还可以使用tail方法

hadoop fs -tail /test1/data.txt  

在这里插入图片描述
tail方法是将文件尾部1K字节的内容输出。支持-f选项,行为和Unix中一致
13.查看Hadoop中/test1目录下的data.txt文件大小

hadoop fs -du -s /test1/data.txt

在这里插入图片描述
-du 后面可以不加-s,直接写目录表示查看该目录下所有文件大小
14.text方法可以将源文件输出为文本格式。允许的格式是zip和TextRecordInputStream

hadoop fs -text /test1/data.txt  

在这里插入图片描述
15.stat方法可以返回指定路径的统计信息,有多个参数可选,当使用-stat选项但不指定format时候,只打印文件创建日期,相当于%y

hadoop fs -stat /test1/data.txt 

在这里插入图片描述
下面列出了format的形式:
%b:打印文件大小(目录为0)
%n:打印文件名
%o:打印block size (我们要的值)
%r:打印备份数
%y:打印UTC日期 yyyy-MM-dd HH:mm:ss
%Y:打印自1970年1月1日以来的UTC微秒数
%F:目录打印directory, 文件打印regular file
16.将Hadoop中/test1目录下的data.txt文件,下载到Linux本地/apps目录中

hadoop fs -get /test1/data.txt /apps  

在这里插入图片描述
17.查看一下/apps目录下是否存在data.txt文件

ls /apps 

在这里插入图片描述
18.使用chown方法,改变Hadoop中/test1目录中的data.txt文件拥有者为root,使用-R将使改变在目录结构下递归进行

hadoop fs -chown root /test1/data.txt  

在这里插入图片描述
19.使用chmod方法,赋予Hadoop中/test1目录中的data.txt文件777权限

hadoop fs -chmod 777 /test1/data.txt 

在这里插入图片描述
20.删除Hadoop根下的file2.txt文件

hadoop fs -rm /file2.txt  

在这里插入图片描述
21.删除Hadoop根下的test1目录

hadoop fs -rm -r /test1 

在这里插入图片描述
22.当在Hadoop中设置了回收站功能时,删除的文件会保留在回收站中,可以使用expunge方法清空回收站

hadoop fs -expunge  

在这里插入图片描述
23.使用Shell命令执行Hadoop自带的WordCount
首先切换到/data目录下,使用vim编辑一个data.txt文件,内容为:hello world hello hadoop hello ipieuvre

cd /data  
vim data.txt

在这里插入图片描述
在HDFS的根下创建in目录,并将/data下的data.txt文件上传到HDFS中的in目录

hadoop fs -put /data/data.txt /in  

在这里插入图片描述
执行hadoop jar命令,在hadoop的/apps/hadoop/share/hadoop/mapreduce路径下存在hadoop-mapreduce-examples-2.6.0-cdh5.4.5.jar包,我们执行其中的worldcount类,数据来源为HDFS的/in目录,数据输出到HDFS的/out目录

hadoop jar /apps/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0-cdh5.4.5.jar wordcount /in /out

![在这里插入图片描述](https://img-blog.csdnimg.cn/2020040517321717.p
查看HDFS中的/out目录

hadoop fs -ls /out  
hadoop fs -cat /out/*  

在这里插入图片描述
24.进入Hadoop安全模式

hdfs dfsadmin -safemode enter  

在这里插入图片描述
25.退出Hadoop安全模式

hdfs dfsadmin -safemode leave 

在这里插入图片描述
26.切换到/apps/hadoop/sbin目录下,关闭Hadoop

cd /apps/hadoop/sbin  
./stop-all.sh  

在这里插入图片描述

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值