- 启动Hadoop
--选择hadoop的文件夹下(本机的hadoop文件夹)
cd hadoop/sbin
./start-all.sh
- 调用文件系统(FS)Shell命令为:hadoop fs <args>形式
- 检查Hadoop 相关的进程是否启动
jps
- 在hadoop文件下创建一个test文件夹
hadoop fs -mkdir /test
- 在test文件夹中创建一个file.txt文件
hadoop fs -touchz /test/file.txt
- 查看此时hadoop的目录下的所有文件
hadoop fs -ls /
- 还可以用ls -R 的方式递归查看根下所有文件
hadoop fs -ls -R /
- 将hadoop根下test目录中的file.txt文件,移动到根下并重命名为file2.txt
hadoop fs -mv /test/file.txt /file2.txt
- 将hadoop根下的file2.txt文件复制到test目录下
hadoop fs -cp /file2.txt /test
- 在Linux本地/data 目录下,创建一个data.txt,并向其中写入hello hadoop
cd /data
touch data.txt
echo hello hadoop >> data.txt
- 将Linux本地的/data目录下的data.txt,上传到HDFS中的/test目录下
hadoop fs -put /data/data.txt /test
- 查看hadoop 中/test目录下的data.txt文件(-cat)
hadoop fs -cat /test/data.txt
- 除此之外还可以使用tail方法(-tail 方法是将文件尾部的内容输出)
hadoop fd -tail /test/data.txt
- 查看hadoop 中/test目录下的data.txt文件大小(-du)
hadoop fs -du /test/data.txt
- 将data.txt文件输出格式为文本格式(-text)
hadoop fs -text /test/data.txt
- stat方法可以返回指定路径的统计信息,有多个参数可选,当使用-stat选项但是不设定format时候,值打印文件创建日期,相当于%y
hadoop fs -stat /test/data.txt
%n 打印文件名
%o 打印block size
%y 打印UTC日期
%b 打印文件大小。
%F 目录打印directory
%r 打印备份数
- 将hadoop 中的/test目录下的data.txt文件,下载到Linux本地/data目录中
hadoop fs -get /test/data.txt /data
- 使用chown 方法,改变Hadoop中/test目录中的data.txt文件拥有者为root,使用-R将使改变在目录结构下递归进行。
hadoop fs -chown root /test/data.txt
- 使用chmod方法,赋予Hadoop 中/test目录中的data.txt文件777权限
hadoop fs -chmod 777 /test/data.txt
- 删除hadoop根下的file2.txt
hadoop fs -rm file2.txt
- 删除hadoop根下的test目录
hadoop fs -rm -r /test
- 挡在Hadoop中设置了回收站功能时,删除的文件会保留在回收站中,可以使用expunge 方法清空回收站
hadoop fs -expunge
- 使用Shell命令执行hadoop自带的WordCount,执行hadoop jar 命令,在hadoop的 hadoop/share/hadoop/mapreduce路径下存在hadoop-mapreduce-examples-2.6.0-cdh5.4.5.jar包,我们执行其中的worldcount类,数据来源为HDFS的/in目录,数据输出到HDFS的/out目录
hadoop jar /home/szk/Documents/sofe/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0-cdh5.4.5.jar wordcount /in /out
- 查看HDFS中的/out目录
hadoop fs -cat /out
- 进入Hadoop安全模式
hadoop fs -dfsadmin -safemode enter
- 退出Hadoop安全模式
hadoop fs -dfsadmin -safemode leave
- 切换到/hadoop/sbin,关闭Hadoop
/stop-all.sh