Hadoop HDFS命令操作实例

一.创建与查看HDFS目录

每次重启后,Jps和java -version执行出来的结果不符合就使用

`source ~/.bash_profile` 是在 Unix/Linux 系统上用来重新加载用户的 Bash 配置文件 `~/.bash_profile` 的命令。这条命令的作用是使得当前的 Bash 环境重新读取并应用 `~/.bash_profile` 中的设置和变量定义。

首先检查master0、slave0虚拟机网络和java版本("1.7.0_71"),检查后再启动hadoop

csu@master0 \~\]$ cd \~/hadoop-2.6.0 \[csu@master0 hadoop-2.6.0\]$ sbin/start-all.sh (启动) \[csu@master0 hadoop-2.6.0\]$ sbin/stop-all.sh (关闭) 再检查是否启动成功 ![](https://i-blog.csdnimg.cn/direct/7ac5c47f94bd44d3968f3f1faec93b13.png) ![](https://i-blog.csdnimg.cn/direct/8d3daad5bc8845438ac4da16cfba9ade.png) ![](https://i-blog.csdnimg.cn/direct/f71c40ee93ed42128a52f694601d4e54.png) ![](https://i-blog.csdnimg.cn/direct/671916132b014b2b94461fe753e8db90.png) ![](https://i-blog.csdnimg.cn/direct/1cf16022badc4e1dba8bf70116d2d44a.png) ![](https://i-blog.csdnimg.cn/direct/8e93dbcd990a4d649624526825bc5dea.png) ![](https://i-blog.csdnimg.cn/direct/f0f6aa4c2f6249f99f3ad16cfdebc764.png) 1、创建HDFS目录: -p可以递归创建 ![](https://i-blog.csdnimg.cn/direct/a59c5102ac6d414b8bb59eb3b68ec39c.png) 2、查看之前创建的HDFS目录 ![](https://i-blog.csdnimg.cn/direct/5e0ad2f0b67e4dc982d4eb12bd2f1150.png) 注意:因为登录的用户为csu,所以会显示/user/csu下的目录。 3、查看HDFS完整目录 因为hadoop fs -ls只能查看一级目录,所以必须逐级查看: ![](https://i-blog.csdnimg.cn/direct/353e21b80b8a4d4c87e1dc3c4c84133a.png) 4、查看所有的HDFS子目录 HDFS提供了一个方便的选项 -R 可以递归查看目录 ![](https://i-blog.csdnimg.cn/direct/d2b6c115f7ad47ebbf13da51e9fdb04c.png) 5、一次性创建所有HDFS子目录 逐级创建很麻烦,但是可以添加参数-p,来一次性创建多级目录: ![](https://i-blog.csdnimg.cn/direct/cb0ff44295d04aec905141cd32847fc6.png) * ## 二.从本地计算机复制文件到HDFS 1、复制本地文件到HDFS: 准备工作,创建本地文件 ![](https://i-blog.csdnimg.cn/direct/509456876dec42758f3de4d6d23c3dc0.png) ![](https://i-blog.csdnimg.cn/direct/3ed1be0b44d54a20aad8b285b88efcc6.png) 随便写的内容进去lc.txt 按Esc 再:wq保存退出 ![](https://i-blog.csdnimg.cn/direct/4d323ada0b274fe5b82962f5c8848008.png) 2、列出文件内容: ![](https://i-blog.csdnimg.cn/direct/1b25a5c8c4d8451496d4f044479c48ba.png) 可以使用:hadoop fs -cat /user/hduser/test/test1.txt \| more 进行分页显示 3、如果复制到HDFS的文件已经存在,会报错,此时可以使用-f 参数,强制复制重复文件到HDFS目录: ![](https://i-blog.csdnimg.cn/direct/900f44d751d844a29eaee223addc8f9e.png) 4、从本地复制多个文件到HDFS,中间用空格分割即可。 5、从本地复制整个目录到HDFS: ![](https://i-blog.csdnimg.cn/direct/1a852bdde00c459da2182b77dc0d5653.png) 6、列出HDFS目录下的所有文件(包括这个目录下子目录的文件) ![](https://i-blog.csdnimg.cn/direct/df5bc17b584040d3a56f88cb2497fbcf.png) 7、使用put复制文件到HDFS,这个参数与copyFromLocal的不同之处在于: -put更宽松,可以把本地或者HDFS上的文件拷贝到HDFS中;而-copyFromLocal则更严格限制只能拷贝本地文件到HDFS中。如果本地和HDFS上都存在相同路径,则-put跟趋于优先取HDFS的源。(不用太深究两者区别,更多用-put) ![](https://i-blog.csdnimg.cn/direct/db19699c032b4b3280ba4c5ee045cfda.png) * ## 三.从HDFS上复制文件到本地 1、参数 -copyToLocal ![](https://i-blog.csdnimg.cn/direct/ae826d818e1c4e7c995d9d03c57a19cf.png) 2、同样的也可以用参数-get完成上述操作: ![](https://i-blog.csdnimg.cn/direct/c8e1668c3a8a4b98a9774d9f08d8a07a.png) * ## 四.复制与删除HDFS文件 1、使用-cp参数,在HDFS上进行复制文件 ![](https://i-blog.csdnimg.cn/direct/400cb57e698d4120985a98c1492fd308.png) 2、使用-rm参数,删除HDFS上的文件;添加-R参数,删除目录: ![](https://i-blog.csdnimg.cn/direct/7a9574dc155d46a4bd91f36eee9f0cb5.png) ![](https://i-blog.csdnimg.cn/direct/edb8a12b42bb47bf9a1c96da73248be8.png) **完成实验后一定要关闭** **hadoop** **,避免下次启动虚拟机时** **hadoop** **出现问题。** ![](https://i-blog.csdnimg.cn/direct/ad92685dd1044ea6bf13810b06a6d160.png) ------------学习笔记

相关推荐
飞鸟malred10 小时前
vite+tailwind封装组件库
前端·react.js·npm
Theodore_102211 小时前
大数据(2) 大数据处理架构Hadoop
大数据·服务器·hadoop·分布式·ubuntu·架构
簌簌曌12 小时前
CentOS7 + JDK8 虚拟机安装与 Hadoop + Spark 集群搭建实践
大数据·hadoop·spark
Theodore_102214 小时前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
IvanCodes16 小时前
六、Sqoop 导出
大数据·hadoop·sqoop
weixin_4723394618 小时前
Doris查询Hive数据:实现高效跨数据源分析的实践指南
数据仓库·hive·hadoop
火龙谷19 小时前
【hadoop】相关集群开启命令
大数据·hadoop·分布式
神奇侠20241 天前
Hive SQL常见操作
hive·hadoop·sql
好运yoo2 天前
npm install的原理
前端·npm
pzpcxy5202 天前
安装VUE客户端@vue/cli报错警告npm WARN deprecated解决方法 无法将“vue”项识别为 cmdlet、函数
前端·vue.js·npm