hadoop3.x 文件系统常用命令(hadoop fs、hdfs dfs)

介绍

操作 文件系统 命令,类似 linux 的 ls、mkdir、cat 等命令

有以下3种:

  • hadoop fs:操作 HDFS 文件系统,并支持的其他文件系统,如本地 FS、WebHDFS、S3 FS 等。官方链接 (官方推荐)

  • hdfs dfs:只能操作 HDFS 文件系统,参数 与 hadoop fs 相同。官方链接
    执行下面命令:

    hdfs dfs
    

    提示如下:

    Usage: hadoop fs [generic options]
    

    推荐使用 hadoop fs

  • hadoop dfs:废弃

帮助

可查看所有命令

hadoop fs -help

创建目录(mkdir)

hadoop fs -mkdir /data

创建多级目录

创建多级目录,当目录不存在时,自动创建

hadoop fs -mkdir -p /top/malaoshi/data

ls

相当于linux的ls命令

hadoop fs -ls /

显示如下:

drwxr-xr-x   - root supergroup          0 2021-02-09 19:16 /data

递归地显示子目录下的内容

hadoop fs -ls -R /

显示结果如下:

drwxr-xr-x   - root supergroup          0 2021-02-09 19:16 /data
drwxr-xr-x   - root supergroup          0 2021-02-09 20:03 /top
drwxr-xr-x   - root supergroup          0 2021-02-09 20:03 /top/malaoshi
drwxr-xr-x   - root supergroup          0 2021-02-09 20:03 /top/malaoshi/data

删除文件、目录(rm)

删除文件

hadoop fs -rm /top/malaoshi/data/1.txt

删除目录(不论该目录是否有文件)

递归删除所有文件,然后再删除该目录

hadoop fs -rm -r /result

删除目录(必须是空目录)

该目录没有文件时,才能删除

hadoop fs -rmdir /data

上传

将 linux 本地文件 上传到 HDFS 文件系统中

创建 文本文件

创建文件 data.txt

vim /data.txt

内容如下:

李雷
韩梅梅
lucy
lili
张三
李四
王五
李雷
韩梅梅
lucy
李雷
韩梅梅
李雷

上传命令(put)

hadoop fs -put /data.txt /top/malaoshi/data

将 linux 系统的 /data.txt 文件,上传到 HDFS /top/malaoshi/data 路径

保存文件的位置

core-site.xml中指定的data路径/dfs/data/current/BP-生成的数字/current/finalized/subdir0/subdir0/blk_xxx

文件后缀不是 .meta

如果上传的文件是文本文件,那么该目录下的文件可以直接打开,英文正常显示,中文乱码

下载(get)

hadoop fs -get /top/malaoshi/data/data.txt /tmp

将 HDFS /top/malaoshi/data/data.txt 文件,下载 linux 系统的 /tmp 目录中

显示文件内容(cat)

注意: 只适合查看 小文件,如果大文件,将会显示所有内容,这是不合理的

hadoop fs -cat /top/malaoshi/data/data.txt

显示文件内容(tail)

显示最后1kb的内容,适合查看 大文件 和 小文件

hadoop fs -tail /top/malaoshi/data/data.txt

原文出处:/show_1IXYspWBqJN.html