- 一、命令查看
- 二、实操
- 2.1 前提
- 2.2 help查看
- 2.3 创建文件夹
- 三、上传文件
- 3.1 moveFromLocal
- 3.2 copyFromLocal
- 3.3 put
- 3.4 appendToFile
- 四、下载
- 4.1 copyToLocal
- 4.2 get
- 五、HDFS直接操作
- 5.1 查看目录
- 5.2 查看文件内容
- 5.3 创建文件夹
- 5.4 权限管理
- 5.5 移动文件
- 5.6 删除文件
查看所有命令,相当于help:
cd bin/
hadoop fs
如下: 再看下这个命令
hdfs dfs
如下: 可见一样的。
前提是启动了集群,执行脚本即可:
myhadoop.sh start
也或者分别再102和104执行:
start-dfs.sh
start-yarn.sh
这里不多说,前面已经讲过。大部分命令其实和Linux差不多。
2.2 help查看查看cat命令语法:
hadoop fs -help cat
如下:
这里创建sanguo文件夹:
hadoop fs -mkdir /sanguo
浏览器查看:
创建一个文件:
vim shuguo.txt
如下: 演示:
上传(该命令相当于剪切再上传到文件夹):
hadoop fs -moveFromLocal ./shuguo.txt /sanguo
可以看到目录它不存在了(剪切掉了): 浏览器查看sanguo:
打开:
再来介绍另一个命令。先创建一个文件:
vim weiguo.txt
内容如下: 上传:
hadoop fs -copyFromLocal ./weiguo.txt /sanguo
演示如下: 内容打开:
两个命令区别:
- copyFromLocal命令,复制本地的上传到HDFS,不会删除本地
- moveFromLocal命令,剪切(删除)本地上传HDFS,会删除本地
再来介绍put命令,它等同于 copyFromLocal命令,这个跟简约。创建文本:
vim wuguo.txt
内容如下:
上传:
hadoop fs -put ./wuguo.txt /sanguo
演示: 浏览器查看:
这个命令用于追加内容到文件。创建新的脚本:
vim chuan.txt
内容如下: 把该文件内容追加到shuguo.txt文件中:
hadoop fs -appendToFile ./chuan.txt /sanguo/shuguo.txt
如果你报错,请看这篇文章:Failed to replace a bad datanode on the existing pipeline due to no more good datanodes being avail 如下:
浏览器查看:
该命令从 HDFS 拷贝到本地。例如把shuguo.txt拷贝到当前文件夹:
hadoop fs -copyToLocal /sanguo/shuguo.txt ./
如下:
该命令与上一个一样,生产环境更常用 get。
例如下载wuguo.txt到本地并更名为wu.txt:
hadoop fs -get /sanguo/wuguo.txt ./wu.txt
如下:
查看根目录:
hadoop fs -ls /
查看目录某个文件夹内容:
hadoop fs -ls /sanguo
如下:
用cat:
hadoop fs -cat /sanguo/wuguo.txt
如下:
hadoop fs -mkdir /test
如下:
目标:修改sanguo里面文件的权限
使用chmod方法:修改为只能读
hadoop fs -chmod 444 /sanguo/wuguo.txt
如下: chmod语法:
例如:把wuguo.txt移动到test文件夹
hadoop fs -mv /sanguo/wuguo.txt /test
如下:
用rm删除文件或者文件夹。
例如:删除test文件夹下面的wuguo.txt
hadoop fs -rm /test/wuguo.txt
如下: