0
点赞
收藏
分享

微信扫一扫

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)


文章目录

  • ​​一、命令查看​​
  • ​​二、实操​​
  • ​​2.1 前提​​
  • ​​2.2 help查看​​
  • ​​2.3 创建文件夹​​
  • ​​三、上传文件​​
  • ​​3.1 moveFromLocal​​
  • ​​3.2 copyFromLocal​​
  • ​​3.3 put​​
  • ​​3.4 appendToFile​​
  • ​​四、下载​​
  • ​​4.1 copyToLocal​​
  • ​​4.2 get​​
  • ​​五、HDFS直接操作​​
  • ​​5.1 查看目录​​
  • ​​5.2 查看文件内容​​
  • ​​5.3 创建文件夹​​
  • ​​5.4 权限管理​​
  • ​​5.5 移动文件​​
  • ​​5.6 删除文件​​


基本语法

hadoop fs 具体命令 和hdfs dfs 具体命令,两个是完全相同的。

一、命令查看

查看所有命令,相当于help:

cd bin/

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传


再看下这个命令

hdfs dfs

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hadoop_02


可见一样的。

二、实操

2.1 前提

前提是启动了集群,执行脚本即可:

myhadoop.sh start

也或者分别再102和104执行:

start-dfs.sh
start-yarn.sh

这里不多说,前面已经讲过。大部分命令其实和Linux差不多。

2.2 help查看

查看cat命令语法:

hadoop fs -help cat

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hadoop_03

2.3 创建文件夹

这里创建sanguo文件夹:

hadoop fs -mkdir /sanguo

浏览器查看:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_04

三、上传文件

3.1 moveFromLocal

创建一个文件:

vim shuguo.txt

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_05


演示:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_06


上传(该命令相当于剪切再上传到文件夹):

hadoop fs -moveFromLocal ./shuguo.txt  /sanguo

可以看到目录它不存在了(剪切掉了):

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_07


浏览器查看sanguo:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_08


打开:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_09

3.2 copyFromLocal

再来介绍另一个命令。先创建一个文件:

vim weiguo.txt

内容如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hadoop_10


上传:

hadoop fs -copyFromLocal ./weiguo.txt /sanguo

演示如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hadoop_11


内容打开:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hdfs_12


两个命令区别:

  1. copyFromLocal命令,复制本地的上传到HDFS,不会删除本地
  2. moveFromLocal命令,剪切(删除)本地上传HDFS,会删除本地

3.3 put

再来介绍put命令,它等同于 copyFromLocal命令,这个跟简约。创建文本:

.txt

内容如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hadoop_13

上传:

-put ./wuguo.txt /sanguo

演示:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_14


浏览器查看:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_15

3.4 appendToFile

这个命令用于追加内容到文件。创建新的脚本:

vim chuan.txt

内容如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_16


把该文件内容追加到shuguo.txt文件中:

hadoop fs -appendToFile ./chuan.txt  /sanguo/shuguo.txt

如果你报错,请看这篇文章:Failed to replace a bad datanode on the existing pipeline due to no more good datanodes being avail 如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hdfs_17

浏览器查看:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_18

四、下载

4.1 copyToLocal

该命令从 HDFS 拷贝到本地。例如把shuguo.txt拷贝到当前文件夹:

hadoop fs -copyToLocal /sanguo/shuguo.txt ./

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_19

4.2 get

该命令与上一个一样,生产环境更常用 get。

例如下载wuguo.txt到本地并更名为wu.txt:

hadoop fs -get /sanguo/wuguo.txt  ./wu.txt

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_20

五、HDFS直接操作

5.1 查看目录

查看根目录:

hadoop fs -ls /

查看目录某个文件夹内容:

hadoop fs -ls /sanguo

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_21

5.2 查看文件内容

用cat:

hadoop fs -cat /sanguo/wuguo.txt

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_22

5.3 创建文件夹

hadoop fs -mkdir /test

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_23

5.4 权限管理

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_24


目标:修改sanguo里面文件的权限

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_25

使用chmod方法:修改为只能读

hadoop fs -chmod 444 /sanguo/wuguo.txt

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_26


chmod语法:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_hdfs_27

5.5 移动文件

例如:把wuguo.txt移动到test文件夹

hadoop fs -mv /sanguo/wuguo.txt  /test

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_上传_28


Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_29

5.6 删除文件

用rm删除文件或者文件夹。

例如:删除test文件夹下面的wuguo.txt

hadoop fs  -rm  /test/wuguo.txt

如下:

Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_30


Hadoop_HDFS(二):Shell操作之文件的管理(上传下载删除等)_大数据_31


举报

相关推荐

0 条评论