hdfs命令的使用(总结)

HDFS客户端使用

虚拟机HDFS为开源Hadoop平台中使用最为频繁的一个文件系统,能够实现海量数据的存储以及高吞吐的数据读写,此实验指导用户如何通过HDFS提供的命令行客户端实现对HDFS的常用操作,如文件的校验,文件的创建,上传,下载,删除,复制,移动,重命名,权限更改,文件查看等操作。做之前必须已经在虚拟机搭建好Hadoop环境。

###1.获取HDFS命令帮助
初次使用时,如果不知道如何使用HDFS命令,可获取HDFS命令帮助,直接在shell中输入hdfs然后回车,就会显示相应帮助信息,如下图所示,图中显示的命令都是基本都是HDFS的管理命令。
[hadoop@master hadoop-2.7.1]$ hdfs
在这里插入图片描述

2.HDFS中fsck命令使用

2.1.classpath命令使用

classpath命令使用,classpath可打印出当前hdfs的classpath信息。

[hadoop@master hadoop-2.7.1]$ hdfs classpath
在这里插入图片描述

2.2用fsck指令校验文件

sck命令使用,fsck为文件系统校验命令,有许多选项,下面介绍并演示一些常用选项的使用。从本地文件系统put一个文件到HDFS,然后在使用fsck指令对文件进行校验。详细操作如下所示。
[hadoop@master local]$ cd /opt/module/hadoop-2.7.1/
[hadoop@master hadoop-2.7.1]$ echo ‘Hello World!’ > test
在这里插入图片描述

[hadoop@master hadoop-2.7.1]$ hdfs dfs -put test /user/
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user/test

在这里插入图片描述

2.3校验并删除损坏文件

校验并删除损坏的文件,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user/test -delete
在这里插入图片描述

2.4校验会显示对应文件

在对指定的目录或文件进行校验时,显示出对应文件,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ touch test1
[hadoop@master hadoop-2.7.1]$ hdfs dfs -put test1 /user/
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user/test1 -files
在这里插入图片描述

2.5显示文件block信息

在对指定文件或目录校验时,显示文件的block信息,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user/test -files -blocks
在这里插入图片描述

2.6 block和block的location信息

在对指定文件或目录校验时,显示文件block和block的location信息,详细操作如下图所示
记录显示的blockId例如“blk_1073741826”,在接下来的步骤中需要用到。注意blockId是blk_后面的一个数字字符串
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user -files -blocks -locations
在这里插入图片描述

2.7 block所在datanode在网络拓扑中的位置信息

在对指定的文件或目录校验时,显示block信息和block所在datanode在网络拓扑中的位置信息,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user/test -files -blocks -racks
在这里插入图片描述

2.8 查看数据存储信息

查看指定文件或目录的数据存储策略信息,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs fsck /user/test -storagepolicies
在这里插入图片描述

2.9 指定block校验

对指定的block进行校验,详细操作如下图所示
执行命令时,请将blkId替换为真实的blockId(请参照"2.6 block和block的location信息" 步骤的提示获取blockId,blockId的格式为blk+数字,数字后面没有下划线,例如:blk_1073741826)
[hadoop@master hadoop-2.7.1]$ hdfs fsck -blockId blk_1073741826
在这里插入图片描述

3.HDFS中dfs命令使用

3.1dfs命令的介绍

dfs 命令的使用。dfs命令是在HDFS中最为常用的命令,它有许多选项,文件的基本操作都是通过执行dfs加不同的选项实现的,如文件的读、写、删除、等操作,都可以使用dfs命令来实现。常用选项如下:
在这里插入图片描述

3.2ls选项的使用

ls选项可查看指定文件的详细信息,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/test1
在这里插入图片描述

3.3cat 选项的使用

cat选项可查看指定文件的文件内容,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -cat /user/test | head -n 10
在这里插入图片描述

3.4Checksum 选项的使用

checksum选项能够查看指定文件的校验和,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -checksum /user/test
在这里插入图片描述

3.5df选项的使用

df可查看当前文件系统的已用空间大小和未用空间大小,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -df
在这里插入图片描述

3.6du选项的使用

[hadoop@master hadoop-2.7.1]$ hdfs dfs -du /user
[hadoop@master hadoop-2.7.1]$ hdfs dfs -du -h /user
[hadoop@master hadoop-2.7.1]$ hdfs dfs -du -s /user
在这里插入图片描述

3.7appendToFile选项的使用

appendToFile选项可将本地指定的文件内容追加到hdfs指定文件,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -appendToFile test /user/test
[hadoop@master hadoop-2.7.1]$ hdfs dfs -cat /user/test

在这里插入图片描述

3.8put选项的使用

put选项可将指定本地文件写入到HDFS的指定位置,详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/
[hadoop@master hadoop-2.7.1]$ touch test2
[hadoop@master hadoop-2.7.1]$ hdfs dfs -put test2 /user/
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/

在这里插入图片描述

3.9get选项的使用

get选项可将HDFS上指定的文件读取并写入到本地指定的目录。详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ rm test2
[hadoop@master hadoop-2.7.1]$ ls
[hadoop@master hadoop-2.7.1]$ hdfs dfs -get /user/test2
[hadoop@master hadoop-2.7.1]$ ls
在这里插入图片描述

3.10mkdir选项的使用

mkdir选项可在HDFS的指定位置创建指定名称的目录。详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -mkdir /user/huawei
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user
在这里插入图片描述

3.11touchz选项的使用

[hadoop@master hadoop-2.7.1]$ hdfs dfs -touchz /user/huawei/taikelab
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/huawei
在这里插入图片描述

3.12mv选项的使用

mv选项有两个作用,一个是将在HDFS中的一个指定文件或目录重命名为新的名称,另外一个作用是将HDFS中一个指定的文件或目录移动到一个新的位置
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/huawei
[hadoop@master hadoop-2.7.1]$ hdfs dfs -mv /user/test /user/huawei/
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/huawei
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/
在这里插入图片描述

3.13cp选项的使用

cp选项可将在HDFS中指定的文件复制出一个副本。详细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -cp /user/huawei/test /user/taike/
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/taike/
在这里插入图片描述

3.14rm选项的使用

rm选项可删除在HDFS指定为文件或目录(在删除目录的时候,必须保证目录为空,否则需要加-r选项无法删除),详 细操作如下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -rm /user/huawei/test
[hadoop@master hadoop-2.7.1]$ hdfs dfs -rm -r /user/huawei/
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/
在这里插入图片描述

3.15chown选项的使用

chown选项可改变HDFS上指定文件或目录的数主与属组(需要管理员才能够执行此命令)
[hadoop@master hadoop-2.7.1]$ hdfs dfs -chown hadoop:hadoop /user/taike
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user
在这里插入图片描述

3.16chmod选项的使用

chmod选项可改变HDFS上指定文件或目录的权限,详细操作下图所示
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user
[hadoop@master hadoop-2.7.1]$ hdfs dfs -chmod 777 /user/test1
[hadoop@master hadoop-2.7.1]$ hdfs dfs -ls /user/test1
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_48676558/article/details/130696858