HDFS的常用命令

接下来我们来了解一下一些常用的文件系统操作,例如:读取文件,新建目录,移动文件,删除数据,列出目录,等等。你可以在命令行中输入hadoop fs -help 命令读取每个命令的详细帮助文件。
现在请跟着我一起,在Linux环境下对Hadoop进行文件系统操作,来体验一下Hadoop的使用。

新建目录:
在本地和hadoop中分别创建文件夹:
本地创建目录:
在这里插入图片描述
hadoop创建目录:
在这里插入图片描述
上传文件至dfs:
切换到本地input目录下,创建文件并添加数据:hello hadoop。在这里插入图片描述
将该文件上传至hadoop:使用hadoop fs -put <要上传的文件> <hdfs目录> 命令。
在这里插入图片描述
查看上传到HDFS的文件:
在这里插入图片描述
移动与删除
列出HDFS中的目录和文件:
在这里插入图片描述
在这里插入图片描述
将helloworld.txt移动到根目录;
在这里插入图片描述
删除helloworld.txt;
在这里插入图片描述
令去删除非空文件夹就会非常麻烦。
和Linux中递归删除一致,我们在-rm之后加入一个-r即可,用-rmr也可。

下表列出了Hadoop常用的shell命令,在之后使用的时候可以作为参考。
在这里插入图片描述
编程要求
在右侧命令行中启动Hadoop,进行如下操作。
在HDFS中创建/usr/output/文件夹;
在本地创建hello.txt文件并添加内容:“HDFS的块比磁盘的块大,其目的是为了最小化寻址开销。”;
将hello.txt上传至HDFS的/usr/output/目录下;
删除HDFS的/user/hadoop目录;
将Hadoop上的文件hello.txt从HDFS复制到本地/usr/local目录。
测试说明
平台会查看你本地的文件和HDFS的文件是否存在,如果存在,则会将其内容输出到控制台。
预期输出:
HDFS的块比磁盘的块大,其目的是为了最小化寻址开销。
HDFS的块比磁盘的块大,其目的是为了最小化寻址开销。

hadoop fs -mkdir /usr
hadoop fs -mkdir /usr/output
touch hello.txt
vim hello.txt
hadoop fs -put hello.txt /usr/output
hadoop fs -rmr /user/hadoop
hadoop fs -copyToLocal /usr/output/hello.txt /usr/local

vim
-i 输入状态
:wq 保存并退出

Logo

更多推荐