HDFS的常见Shell操作

一、前提

部署好hadoop,伪分布式部署还是分布式集群部署都可以,部署参见如下:

1、伪分布部署参见:

https://blog.csdn.net/weixin_40612128/article/details/119008295?spm=1001.2014.3001.5502

2、分布式集群部署参见:

https://blog.csdn.net/weixin_40612128/article/details/122770580?spm=1001.2014.3001.5502

二、检查hadoop各个服务进程是否启动

输入如下命令

jps

注:我这里是伪分布式部署,有如下的进程。
HDFS的常见Shell操作_第1张图片
如果没有这些进程,例如,输入jps后如下:

jps

在这里插入图片描述
就要启动hadoop集群,输入如下命令

start-all.sh

注意,我这里可以在任意目录输入start-all.sh是因为我把Hadoop的安装目录配置到/etc/profile里了,如下:
在这里插入图片描述输入start-all.sh命令后,再输入jps,hadoop就启动好了,如下:

HDFS的常见Shell操作_第2张图片

三、hdfs的常见shell操作

1、-ls:查询指定路径信息

hdfs dfs -ls hdfs://bigdata01:9000/

在这里插入图片描述或者简写如下:

hdfs dfs -ls /

HDFS的常见Shell操作_第3张图片

2、-put:从本地上传文件

hdfs dfs -put hello.txt /
hdfs dfs -ls /

HDFS的常见Shell操作_第4张图片

3、-cat:查看HDFS文件内容

hdfs dfs -ls /
hdfs dfs -cat /hello.txt

HDFS的常见Shell操作_第5张图片

4、-get:下载文件到本地

hdfs dfs -get /hello.txt ./

HDFS的常见Shell操作_第6张图片

5、-mkdir [-p]:创建文件夹

hdfs dfs -mkdir /test
hdfs dfs -mkdir -p /a/b

HDFS的常见Shell操作_第7张图片注:递归显示在ls后加-R参数

hdfs dfs -ls -R /

HDFS的常见Shell操作_第8张图片注意,因为我这个目录下文件比较多,一般刚安装的话,里面是没有文件的!!

6、-rm [-r]:删除文件/文件夹

hdfs dfs -rm /hello.txt

HDFS的常见Shell操作_第9张图片删除目录加-r参数

hdfs dfs -rm -r /test

HDFS的常见Shell操作_第10张图片如果是多级目录也可以递归删除

hdfs dfs -rm -r /a

HDFS的常见Shell操作_第11张图片

四、HDFS一些实际操作

首先上传几个文件到hdfs的/test目录下
内容都是一样的,复制几个上传上去。

hello world
hello you
hell me

HDFS的常见Shell操作_第12张图片

1、统计根目录下文件的个数

hdfs dfs -ls /test | grep /test| wc -l

HDFS的常见Shell操作_第13张图片

2、统计根目录下每个文件的大小,最终把文件名称和大小打印出来

hdfs dfs -ls /test |grep /test |  awk '{print $8,$5}'

HDFS的常见Shell操作_第14张图片

你可能感兴趣的:(hadoop,big,data,hdfs)