Hadoop中常见的shell命令

1、如何将Linux本地的数据上传到HDFS中?

hadoop fs -put  本地的文件 HDFS中的目录
hdfs dfs -put 本地的文件 HDFS中的目录

2、如何创建HDFS中的文件夹?

需求:想创建/shujia/bigdata17

hadoop fs -mkdir -p /shujia/bigdata17
hdfs dfs -mkdir /shujia/bigdata17

注意:不加-p只能生成单级文件夹

3、查看当前HDFS目录下的文件和文件夹?

hadoop fs -ls /shujia/bigdata17/
hdfs dfs -ls /shujia/bigdata17

4、将HDFS中的文件下载到Linux本地中

hadoop fs -get HDFS中的文件目录 本地要存放文件的目录
hdfs dfs -get HDFS中的文件目录 本地要存放文件的目录

5、删除命令(如果垃圾回收站大小小于被删除文件的大小,直接被删除,不经过回收站)

hadoop fs -rm... #仅删除文件
hadoop fs -rmr... #删除文件夹

删除后,会自动创建回收站,数据依旧保留至一天(日志保留七天)

 

 

6、移动文件

hadoop fs -mv 目标文件 目的地路径

7、HDFS内部复制文件

hadoop fs -cp [-p] ... ... #如果想复制文件夹,加上-p参数
强制格式化集群
1、停止正在运行的集群
stop-all.sh
2、删除所有节点Hadoop根目录中的tem文件夹
3、在主节点(master)中Hadoop的根目录中的bin目录下,重新格式化HDFS
./hdfs namenode -format
4、启动集群
start-all.shs

 

查看node1中block0的block pool id:

/usr/local/soft/hadoop-2.7.6/tmp/dfs/data/current

查看node1中block的block id:

/usr/local/soft/hadoop-2.7.6/tmp/dfs/data/current/BP-140862523-192.168.226.110-1653106365562/current/finalized/subdir0/subdir0

 

版权声明:本文为原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Longtianm/p/16296428.html