HDFS的shell命令操作

1.基本语法

bin/hdfs dfs 具体命令

2.参数大全

在这里插入图片描述

Usage: Hadoop fs [generic  options]

        [-appendToFile <localsrc> ...  <dst>]

        [-cat [-ignoreCrc] <src> ...]

        [-checksum <src> ...]

        [-chgrp [-R] GROUP PATH...]

        [-chmod [-R] <MODE[,MODE]... |  OCTALMODE> PATH...]

        [-chown [-R] [OWNER][:[GROUP]] PATH...]

        [-copyFromLocal [-f] [-p] [-l]  <localsrc> ... <dst>]

        [-copyToLocal [-p] [-ignoreCrc] [-crc]  <src> ... <localdst>]

        [-count [-q] [-h] [-v] [-x]  <path> ...]

        [-cp [-f] [-p | -p[topax]] <src>  ... <dst>]

        [-createSnapshot <snapshotDir>  [<snapshotName>]]

        [-deleteSnapshot <snapshotDir>  <snapshotName>]

        [-df [-h] [<path> ...]]

        [-du [-s] [-h] [-x] <path> ...]

        [-expunge]

        [-find <path> ... <expression>  ...]

        [-get [-p] [-ignoreCrc] [-crc]  <src> ... <localdst>]

        [-getfacl [-R] <path>]

        [-getfattr [-R] {-n name | -d} [-e en]  <path>]

        [-getmerge [-nl] <src>  <localdst>]

        [-help [cmd ...]]

        [-ls [-C] [-d] [-h] [-q] [-R] [-t] [-S]  [-r] [-u] [<path> ...]]

        [-mkdir [-p] <path> ...]

        [-moveFromLocal <localsrc> ...  <dst>]

        [-moveToLocal <src>  <localdst>]

        [-mv <src> ... <dst>]

        [-put [-f] [-p] [-l] <localsrc>  ... <dst>]

        [-renameSnapshot <snapshotDir>  <oldName> <newName>]

        [-rm [-f] [-r|-R] [-skipTrash]  <src> ...]

        [-rmdir [--ignore-fail-on-non-empty]  <dir> ...]

        [-setfacl [-R] [{-b|-k} {-m|-x  <acl_spec>} <path>]|[--set <acl_spec> <path>]]

        [-setfattr {-n name [-v value] | -x  name} <path>]

        [-setrep [-R] [-w] <rep>  <path> ...]

        [-stat [format] <path> ...]

        [-tail [-f] <file>]

        [-test -[defsz] <path>]

        [-text [-ignoreCrc] <src> ...]

        [-touchz <path> ...]

        [-usage [cmd ...]]

3.常用命令实操

(1)-help:输出这个命令参数在这里插入代码片

bin/hdfs dfs -help rm

(2) -ls:显示目录信心

hdfs dfs -ls

(3)-mkdir:在 hdfs 上创建目录

hdfs dfs -mkdir -p /aaa/bbb/cc/dd

(4)-moveFromLocal 从本地剪切粘贴到 hdfs

hdfs dfs -moveFromLocal /home/Hadoop/a.txt  /aaa/bbb/cc/dd

(5)-moveToLocal:从hdfs 剪切粘贴到本地

hdfs dfs -moveToLocal  /aaa/bbb/vv/dd  /home/Hadoop/a.txt

(6)-appendToFile:追加一个文件到已经存在的文件末尾

hdfs dfs -appendToFile  ./hello.txt  /hello.txt

(7)-cat :显示文件内容

hdfs dfs -cat /hadoop-daemon.sh

(8)-tail :显示一个文件的末尾

hdfs dfs -tail /weblog/access_log.l

(9)-text:以字符形式打印一个文件的内容

hdfs dfs -text  /weblog/access_log.l

(10)-chgrp,-chmod,-chown:linux 文件系统中的用法一样,修改文件所属权限

hdfs dfs -chmod 666 /hello.txt
hdfs dfs -chown someuser:somegrp  /hello.txt

(11)-copyFromLocal:从本地文件系统中拷贝文件到 hdfs 路径去

hdfs dfs -copyFromLocal ./jdk.tar.gz  /aaa/

(12)-copyToLocal:从 hdfs 拷贝到本地

hdfs dfs -copyToLocal /aaa/jdk.tar.gz

(13)-cp:从 hdfs 的一个路径拷贝到hdfs的另一个路径

hdfs dfs -cp /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2

(14)-mv :在 hdfs 目录中移动文件

hdfs dfs -mv /aaa/jdk.tar.gz  /

(15)-get:等同于 copyToLocal,就是从 hdfs 下载文件到本地

hdfs dfs -get /aaa/jdk.tar.gz

(16)-getmerge:合并下载多个文件,比如 hdfs 的目录 /aaa/下有多个文件:log.1,log.2,log.3,…

hdfs dfs -getmerge /aaa/log.* ./log.sum

(17)-put:等同于 copyFromLocal

hdfs dfs -put /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2

(18)-rm:删除文件或文件夹

hdfs dfs -rm -r /aaa/bbb/

(19)-rmdir:删除空目录

hdfs dfs -rmdir /aaa/bbb/ccc

(20)-df:统计文件系统的可用空间信息

hdfs dfs -df -h /

(21)-du统计文件夹的大小信息

hdfs dfs -du -s -h /aaa/*

(22)-count:统计一个指定目录下的文件节点数量

hdfs dfs -count /aaa/

(23)-setrep:设置 hdfs 中文件的副本数量

hdfs dfs -setrep 3 /aaa/jdk.tar.gz

(这里设置的副本数只是记录在 namenode 的元数据中,是否真的会有这么多副本,还得看 datanode 的数量。因为目前只有3台设备,最多也就3个副本,只有节点数的增加到10台时,副本数才能达到10)

(24)-expunge:清空hdfs垃圾桶

hdfs dfs -expunge
发布了13 篇原创文章 · 获赞 30 · 访问量 1550

猜你喜欢

转载自blog.csdn.net/weixin_45746679/article/details/102915441