操作HDFS文件系统常用命令(启停、创建、查看、上传、下载、追加、删除.etc)


跟linux命令大差不差

1 一键启停

HadoopHDFS组件内置了HDFS集群的一键启停脚本。
$HADOOP_HOME/sbin/start-dfs.sh,一键启动HDFS集群
执行原理:
在执行此脚本的机器上,启动SecondaryNameNode
读取core-sitexml内容 (fsdefaultFS项),确认NameNode所在机器,启动NameNode读取workers内容,确认DataNode所在机器,启动全部DataNode

$HADOOP_HOME/sbin/stop-dfs.sh,一键关闭HDFS集群
执行原理:
在执行此脚本的机器上,关团SecondaryNameNode读取core-site.xml内容 (fs.defaultFS项),确认NameNode所在机器,关闭NameNode读取workers内容,确认DataNode所在机器,关闭全部NameNode

以下命令两种语法版本都可以:
hadoop fs
hdfs dfs

2 单进程启停

hadoop-daemon.sh(start|status|stop)(namenode|secondarynamenode|datanode) 启动状态或停止
hdfs --daemon(start|status|stop)(namenode|secondarynamenode|datanode)

3 创建文件夹

hadoop fs -mkdir [-p] <path>
hdfs dfs -mkdir [-p] <path> 新版本命令
path:hdfs://node1:8020/test 协议头可以不写,会自动识别linux还是hdfs

4 查看指定目录下内容

` hadoop fs -ls [-h][-R][ …] 或 hdfs dfs -ls [-h][-R][ …]
-h 人性化显示文件size; -R递归查看指定目录及其子目录;

5 上传文件到HDFS指定目录下 linux->HDFS

hadoop fs -put [-f] [-p]<localsrc>...<dst> 或 hdfs dfs -put [-f] [-p]<localsrc>...<dst>
-f 覆盖目标文件(已存在情况下) -p 保留访问和修改时间,所有权和权限。
带协议头:hdfs dfs -put file:///home/hadoop/test.txt hdfs://node1:8020/
不带协议头:hdfs dfs -put ./test.txt /

6 下载 HDFS ->Linux

类似5:` hdfs dfs -get [-f] [-p]…

7 追加数据 linux->HDFS

hdfs dfs -appendToFile <localsrc>...<dst>

8 查看HDFS文件内容

hdfs dfs -cat <src>
读大文件可以使用管道符配合more【对内容进行翻页】
hdfs dfs -cat<src> | more

9 HDFS 数据删除

hdfs dfs -rm -r [skipTrash] URI [URI ...]
skipTrash 跳过回收站,回收站功能默认是关闭的,开启需要配置。
删文件夹才需要-r
vim /export/server/hadoop/etc/hadoop/core-site.xml
在这里插入图片描述

10 网页端图形化界面

node1:9870可以打开网页端的HDFS文件系统,可以图形化界面操作文件,但是要在配置文件中修改相应权限,但是不建议这样操作,会有安全隐患。可以找可视化的插件进行类似操作比如Big Data Tools插件。

11总结

1 可使用命令:
hadoop fs
hdfs dfs
2.文件系统协议包括
file:// 表示Linux本地文件
hdfs://namenode_server:port/ 表示HDFS文件系统
比如当前集群表示为: hdfs://node1:8020/般可以省略file://和hdfs://协议头,不用写
3.常用命令
mkdir 创建文件夹
ls、cat 列出内容、查看内容
cp、mv、rmr 复制、移动、删除
put、get 上传、下载
appendToFile 向文件追加内容

猜你喜欢

转载自blog.csdn.net/weixin_43629813/article/details/130301205