Hadoop Shell基本操作
1.启动Hadoop
cd /apps/hadoop/sbin
./start-all.sh
2.执行jps,检查一下Hadoop相关进程是否启动
jps
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
13.查看Hadoop中/test1目录下的data.txt文件大小
hadoop fs -du -s /test1/data.txt
14.text方法可以将源文件输出为文本格式。
hadoop fs -text /test1/data.txt
15.stat方法可以返回指定路径的统计信息,有多个参数可选,当使用-stat选项但不指定format时候,只打印文件创建日期,相当于%y
hadoop fs -stat /test1/data.txt
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
1.cd /data
2.vim data.txt
1.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
查看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