Hadoop之HDFS使用命令(常用)

本篇仅记载部分常用命令

若无所需命令可查看官方网站Apache Hadoop 3.3.6 -- Overview

:一切命令仅在启动HDFS集群后执行,否则会报错

注:仅在hadoop用户下操作

在Linux中超级用户是:root

但HDFS的超级用户是:启动namenode的用户,及本篇文 章的hadoop用户

如用root用户执行hadoop命令会报错

HDFS操作命令,Hadoop提供了两套

hadoop命令(老版)

bash 复制代码
hadoop fs [generic options]

hdfs命令 (新版)

bash 复制代码
hdfs dfs [generic options]

协议头区分

Linux

bash 复制代码
file:///

HDFS

bash 复制代码
hdfs://namenode:port/

例:

bash 复制代码
Linux:file:///usr/local/hello.txt
HDFS: hdfs://node1:8020/usr/local/hello.txt

# 注:协议头file:///或hdfs://node1:8020/可以省略
#     除非明确要写或者不写有BUG,否则一般不用写

HDFS集群启停命令

一键启停

bash 复制代码
# 一键启动HDFS集群
start-dfs.sh

# 一键停止HDFS集群
stop-dfs.sh

单进程启停

注:仅控制所在机器的进程的启停

bash 复制代码
hadoop-daemon.sh (start|status|stop) (namenode|secondarynamenode|datanode)

hdfs --daemon (start|status|stop) (namenode|secondarynamenode|datanode)

# start 启动    status 查看状态   stop 停止

例:jps命令是查看当前启动的集群,目前是都启动了

利用hadoop-daemon.sh stop datanode命令将datanode进程给停止了

注:warning是表明hadoop-daemon.sh这个命令过时了,推荐用hdfs --daemon

但不影响使用

创建文件夹

bash 复制代码
hadoop fs -mkdir [-p] <path> ...

hdfs dfs -mkdir [-p] <path> ...

# path 为待创建的目录
# -p 沿着路经创建父目录

例:创建/huan/haha文件夹

注:hadoop fs -ls / 查看hadhdfs的hdfs根目录下的内容

hadoop fs -ls /huan 查看hadhdfs的hdfs的huan目录下的内容

查看指定目录下内容

bash 复制代码
hadoop fs -ls [-h] [-R] [<path> ...]

hdfs dfs -ls [-h] [-R] [<path> ...]

# path 指定目录路径
# -h 人性化显示文件size
# -R 递归查看指定目录及其子目录

上传文件到HDFS指定目录下(从Linux--->HDFS)

bash 复制代码
hadoop fs -put [-f] [-p] <localsrc> ... <dst>

hdfs dfs -put [-f] [-p] <localsrc> ... <dst>

# -f 覆盖目标文件(已存在的)
# -p 保留访问和修改时间,所有权和权限
# localsrc 本地文件系统(客户端所在机器)
# dst 目标文件系统(HDFS)

例:将Liunx目录下的test.txt上传到hdfs根目录下

查看HDFS文件内容

bash 复制代码
hadoop fs -cat <src> ...

hdfs dfs -cat <src> ...

读取大文件可以使用管道符配合more

bash 复制代码
hadoop fs -cat <src> | more

hdfs dfs -cat <src> | more

# 按空格可翻页查看

例:查看text.txt文件中的内容

下载HDFS文件(从HDFS--->Linux)

bash 复制代码
hadoop fs -get [-f] [-p] <src> ... <localdst>

hdfs dfs -get [-f] [-p] <src> ... <localdst>

# localdst 必修是目录
# -f 覆盖目标文件 (已存在)
# -p 保留访问和修改时间,所有权和权限

例:将HDFS的huan下载到Linux

拷贝HDFS文件(HDFS--->HDFS)

注:可将复制的文件改名

bash 复制代码
hadoop fs -cp [-f] <src> ... <dst>

hdfs dfs -cp [-f] <src> ... <dst>

# -f 覆盖目标文件(已存在)

例:将HDFS下的test.txt文件复制到HDFS下的huan目录下

例:将test,txt复制到huan目录下改名为ad.txt

追加数据到HDFS文件夹中(Linux-->HDFS)

bash 复制代码
hadoop fs -appendToFile <localsrc> ... <dst>

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

# 将所有给定本地文件的内容追加到给定dst文件
# dst如果文件不存在,将创建该文件

例:创建app.txt文件,将其添加到HDFS的test.txt文件中

HDFS数据移动操作

bash 复制代码
hadoop fs -mv <src> ... <dst>

hdfs dfs -mv <src> ... <dst>

# 移动文件到指定文件夹下,可重命名文件名称

例:将HDFS下的test.txt移动到HDFS下的huan目录下并改名为qwe.txt

HDFS数据删除操作

bash 复制代码
hadoop fs -rm -r [-skipTrash] URI [URI ...]

hdfs dfs -rm -r [-skipTrash] URI [URI ...]

# 删除指定路径的文件或文件夹
# -skipTrash 跳过回收站,直接删除

注: 1440代表在回收站的时间为一天,120表示俩小时检查一次回收站,将到时间的清除

回收站在哪个机器配则在哪个机器生效

例:将huan目录下的qwe.txt删除

HDFS中修改所属用户和组

bash 复制代码
hadoop fs -chown [-R] root:root /xxx.txt

hdfs dfs -chown [-R] root:root /xxx.txt

例:将huan目录下的ad.txt改为root用户

HDFS修改权限

bash 复制代码
hadoop fs -chmod [-R] 777 /xxx.txt

hdfs dfs -chmod [-R] 777 /xxx.txt

例:将huan目录下的text.txt文件权限修改为777

HDFS WEB UI权限修改

相关推荐
老蒋新思维1 小时前
创客匠人峰会新视角:AI 时代知识变现的 “组织化转型”—— 从个人 IP 到 “AI+IP” 组织的增长革命
大数据·人工智能·网络协议·tcp/ip·创始人ip·创客匠人·知识变现
TMO Group 探谋网络科技1 小时前
AI Agent工作原理:如何连接数据、决策与行动,助力企业数字化转型?
大数据·人工智能·ai
Chasing Aurora2 小时前
Git 工程指引(命令+问题)
大数据·git·elasticsearch·团队开发·互联网大厂
TG:@yunlaoda360 云老大3 小时前
阿里云国际站代理商RPA跨境服务的适用场景有哪些?
大数据·阿里云·rpa
微盛企微增长小知识3 小时前
2025企业微信服务商测评:头部服务商微盛AI·企微管家技术实力与落地效果解析
大数据·人工智能·企业微信
TMO Group 探谋网络科技3 小时前
AI电商的应用:Magento 使用 Adobe 生成式 AI改造7大业务场景
大数据·人工智能·adobe·ai
UI设计兰亭妙微3 小时前
理性数据,温柔体验:北京兰亭妙微解码 Hydra Corps. 企业管理界面的 “松弛感设计”
大数据·人工智能·用户体验设计
慎独4133 小时前
家家有:从单向支出到价值循环,绿色积分如何 重构商业逻辑?
大数据·人工智能
梦里不知身是客114 小时前
flink使用 DefaultResourceCalculator(默认资源计算器) 策略
大数据·flink
五度易链-区域产业数字化管理平台4 小时前
十五五规划明确数智方向数字经济将迎新变化,五度易链大数据、AI技术如何从单点应用走向全域赋能
大数据·人工智能